上传使用广场连接API项目图像(Uploading Item Image using Square

2019-10-21 15:28发布

我查看张贴的广场连接API文档,并在GitHub上例中的例子,但是,我似乎无法对这些例子来指导适应上上传图片: http://docs.connect.squareup.com/#后图像

部分挑战正在与内容类型:多部分/表单数据只图像上传需要这样的文件是不存在的(使用connect-API文档)。

我最终的问题是,能够广场请张贴的如何上传图片的例子吗? 最相关的是,演示如何使用图像而不只是一个项目更新多个项目的例子。 任何帮助表示赞赏。

Answer 1:

感谢您指出的文档中这种差距。 下面的函数使用请求 Python库上载图像的项目(这个库使得多部分/格式数据请求显著简单)。 请注意,您需要安装的要求 ,如果你有没有先。

import requests

def upload_item_image(item_id, image_path, access_token):

  endpoint_path = 'https://connect.squareup.com/v1/' + your location + '/items/' + item_id + '/image'

  # Don't include a Content-Type header, because the Requests library adds its own
  upload_request_headers = {'Authorization': 'Bearer ' + access_token,
                            'Accept': 'application/json'}

  # Be sure to set the correct MIME type for the image
  files = [('image_data', (image_path, open(image_path, 'rb'), "image/jpeg"))] 
  response = requests.post(endpoint_path, files=files, headers=upload_request_headers)

  # Print the response body
  print response.text
  • item_id是你上传的图像项目的ID。
  • image_path是您要上传的图片的相对路径。
  • access_token是你表现代表商家的访问令牌。

这是不可能上传多个项目图像的单个请求到这个端点。 相反,发送为每个项目单独请求。



文章来源: Uploading Item Image using Square Connect API