我正在尝试通过REST
谷歌应用引擎上的海报 python 库(HTML JPEG 图像上传)将文件发送到 picloud 上的函数。但是该函数会引发此错误:
{"error": {"msg": "函数参数(POST 数据)不是有效的 JSON", "code": 446, "data": "{'parameter': u' filename'}", "retry":错误的}}
我已将函数的输出编码设置为raw
,我也按照文档进行了详细说明。
以下是一些功能细节。
函数名称:detector(name,ifile)
有两个参数,一个图像文件及其名称
这是代码的相关部分:
#all needed classes and libraries have been imported,urlfetch, poster,MultipartParam class ect.
#here we go!
params=[]
params.append(MultipartParam("Imagename",filename="anyname.jpg",filetype="application/octet-stream",value=some_file_uploaded_via_html_form))
#http_headers has been defined with appropriate autorization credentials
datagen,headers=multipart.encode(params)
data=str().join(datagen)
result=urlfetch.fetch(url=my_defined_function_url,payload=data,method=urlfetch.POST,headers=http_headers)
print result.content
当我添加以下行时,为了包含真正的函数参数
params.append(MultipartParam('name',value=filename_variable)
params.append(MultipartParam('ifile',value=some_file_uploaded_via_html_form)
我得到错误
{"error": {"msg": "charset 被定义多次", "code": 445, "retry": false}}
我也尝试将参数包装在字典中,而不是单独的MultipartParam
实例
请帮忙。