我正在使用 Forge 文件模块尝试从图库中上传图像。Forge 在 Android 2.3 上运行,图像选择捕获位工作正常。但是当我尝试使用 Request.Ajax() 发送文件时,我得到一个伪造异常。
我已经从下面的 Catalyst 日志中转储了输出
Request URL:forge.request.ajax
Request Method:undefined
Status Code:400 error
{ url: 'http://example.com/',
username: null,
password: null,
data: null,
headers: { Accept: '*/*', 'Content-Type': 'image/jpg' },
timeout: 60000,
type: 'POST',
boundary: null,
files:
[ { uri: 'content://media/external/images/media/212#Intent;end',
name: 'Image',
height: 500,
width: 500 } ],
fileUploadMethod: 'raw' } // <- got this from a blog post,
这就是我得到的回报
{ type: 'UNEXPECTED_FAILURE',
message: 'Forge Java error: FileNotFoundException: http://example.com/' }
我检查了服务器端并确认那里没有问题(制作了一个在那里发布的测试脚本)。如果我删除文件附加调用,该应用程序将发布到服务器。
我查看了此处发布的示例代码,但它似乎使用的是旧 API,我找不到一些方法 - https://github.com/trigger-corp/photo-log/blob/master/ photolog.js
我在文件调用中做错了吗?