1

我有一个桌面应用程序,它通过他们的 RESTful api 和 OAuth 1.0 与 Web 服务交互。我可以很好地使用所有资源,身份验证,获取/发布调用来检索和发送简单的文本数据等,没有问题。

但是,我正在努力发送二进制数据。该服务允许发送图片。一方面,他们有一个非 OAuth api,您还可以通过它发送纯二进制文件,只需在 URL 中传递一些参数并将整个二进制文件放入帖子中。

现在通过 OAuth api 做到这一点,成为一个问题:

该服务指定帖子需要 2 个参数(不包含在 URL 中,因为这是 REST,但包含在 POST 参数中):

image   A binary file, base64 data, or a URL
type    The type of file that's being sent in. Accepted values: file, base64, url

所以我们有 2 个参数:图像包含文件本身,类型是“文件”来指定二进制文件。但是我应该如何通过 OAuth 将其包含在内?鉴于必须使用 -image- 和 -type- 参数(及其值)来生成签名的基本字符串,该字符串与 POST 中包含的参数相匹配。我不能将整个二进制文件包含在内图像参数的值;那么在这种情况下是如何完成的呢?

4

1 回答 1

1

nvm,他们的 OAuth api 期望文件作为 multipart/form-data 与变量存在,并且在签名的基本字符串中没有(他们的非 OAuth api 相反不需要多部分,所以我希望他们的 OAuth 也不会; 他们的文档在这方面有点缺乏)。

于 2012-06-18T02:47:36.383 回答