從Google Photo API(使用 Go 和 Google Photo REST API)獲取媒體項(xiàng)目列表和相冊(cè)列表后,將項(xiàng)目添加到相冊(cè)會(huì)返回錯(cuò)誤。(注意:使用 Web 界面將項(xiàng)目添加到相冊(cè)效果很好)。將媒體項(xiàng)添加到相冊(cè)的代碼:func (a Album) AddItems(items ...MediaItem) error {? ? rel := &url.URL{Path: fmt.Sprintf("/v1/albums/%s:batchAddMediaItems", a.ID)}? ? u := a.service.baseURL.ResolveReference(rel)? ? for len(items) > 0 {? ? ? ? ids := []string{}? ? ? ? for i := 0; i < 50 && i < len(items); i++ {? ? ? ? ? ? ids = append(ids, items[i].ID)? ? ? ? }? ? ? ? items = items[len(ids):]? ? ? ? toAdd := map[string]interface{}{? ? ? ? ? ? "mediaItemIds": ids,? ? ? ? }? ? ? ? bodyData, err := json.Marshal(toAdd)? ? ? ? if err != nil {? ? ? ? ? ? return err? ? ? ? }? ? ? ? req, err := http.NewRequest("POST", u.String(), bytes.NewBuffer(bodyData))? ? ? ? if err != nil {? ? ? ? ? ? return err? ? ? ? }? ? ? ? resp, err := a.service.client.Do(req)? ? ? ? if err != nil {? ? ? ? ? ? return err? ? ? ? }? ? ? ? defer resp.Body.Close()? ? ? ? respErr := struct {? ? ? ? ? ? Error ServerError `json:"error"`? ? ? ? }{}? ? ? ? body, err := ioutil.ReadAll(resp.Body)? ? ? ? if err != nil {? ? ? ? ? ? return err? ? ? ? }? ? ? ? err = json.Unmarshal(body, &respErr)? ? ? ? if err != nil {? ? ? ? ? ? return err? ? ? ? }? ? ? ? err = respErr.Error.Error()? ? ? ? if err != nil {? ? ? ? ? ? return err? ? ? ? }? ? }? ? return nil}服務(wù)器返回以下錯(cuò)誤:error 400: Request contains an invalid media item id. (INVALID_ARGUMENT).?媒體項(xiàng) ID 是從搜索請(qǐng)求返回的媒體項(xiàng)的JSON 表示的 ID 字段中復(fù)制的。媒體項(xiàng)的其他字段似乎有效(例如 ProductURL)。這個(gè)batchAddMediaItems請(qǐng)求有什么問題?或者如何獲得適合的有效媒體項(xiàng)目 ID batchAddMediaItems?
- 0 回答
- 0 關(guān)注
- 150 瀏覽
添加回答
舉報(bào)
0/150
提交
取消