Facebook API 使用带有多部分表单数据的 HTTP POST 请求的错误响应
Posted
技术标签:
【中文标题】Facebook API 使用带有多部分表单数据的 HTTP POST 请求的错误响应【英文标题】:Error response from the Facebook API using HTTP POST request with multipart form-data 【发布时间】:2017-10-27 10:44:55 【问题描述】:我在虚幻引擎 4 项目中使用 Facebook Graph API。我正在尝试实现照片上传。我使用的方法是多部分表单数据。
这是我收到的回复:
response="error":"message":"无效参数","type" :"OAuthException","code":100,"error_subcode":1366046,"is_transient":false,"error_user_title":"不能 读取文件","error_user_msg":"您的照片无法上传。相片 应小于 4 MB 并保存为 JPG、PNG、GIF 或 TIFF 文件。","fbtrace_id":"AaAcYvfdWM/"
ps:文件小于 4 MB。
HTTP 请求网址
https://graph.facebook.com/me/photos…my user token
HTTP 请求格式
内容类型:多部分/表单数据;边界=---------UE4AdvancedFB
------------UE4AdvancedFB
内容配置:表单数据;名称=“来源”;文件名="sf.jpg"
内容类型:图片/jpeg
字节数据
------------UE4AdvancedFB--
需要注意的重要一点是,我实际上没有文件,而只有字节(来自游戏纹理)。
如果我只想发送字节但实际上没有文件,我该怎么办? (Content-Disposition 文件名应该是什么?以及 Content-Type?)
对错误响应有什么想法吗?
谢谢!
【问题讨论】:
【参考方案1】:请求实际上是正确的。问题是发送的图像数据。从游戏纹理到字节数据的转换实际上导致了大于最大 4 MB 的大小。
谢谢。
【讨论】:
以上是关于Facebook API 使用带有多部分表单数据的 HTTP POST 请求的错误响应的主要内容,如果未能解决你的问题,请参考以下文章
如何使用带有 Rocket 的 abonander/multipart 解析多部分表单?
如何使用 Spring MockMvc 放置多部分/表单数据?