3

我正在尝试在 Mechanical Turk 上测试文件上传。

我正在调用 GetFileUploadURL 服务,我的查询字符串如下所示:

Operation=GetFileUploadURL&AssignmentId=XXX&Signature=XXX&Version=2008-08-02&AWSAccessKeyId=XXX&Timestamp=2009-07-11T18%3A33%3A03-04%3A00&QuestionIdentifier=smiley&HITId=XXX&Service=AWSMechanicalTurkRequester

我的 HIT HTML 看起来像这样

<ul>
    <li>Draw me a smily face.</li>
    <li>Save it as a PNG</li>
    <li>Image must be 64x64</li>
    <li>Be Creative</li>
</ul>
<p>&nbsp;</p>
<p><input type="file" name="smiley" value="" /></p>

"The value \"null\" is not valid for the parameter QuestionIdentifier"即使我正在传递,我也会收到一个错误QuestionIdentifier

我猜我的 HIT HTML 不是最理想的,而且我错过了一些可以让这变得更容易的东西。我是否可以写一些其他的东西<input type="file" name="smiley" value="" />或以某种方式改进它以使这个 Web 服务调用更容易?我真的不确定我应该在我的GetFileUploadURL电话中传递什么QuestionIdentifier,我认为这"smiley"会奏效。

编辑:我知道它应该smiley基于我打电话时看到的结果GetAssignmentsForHIT

有任何想法吗?为什么它认为它是空的?将参数传递给此服务时,顺序是否重要?

4

1 回答 1

2

API 文档

GetFileUploadURL 操作生成并返回一个临时 URL。您使用临时 URL来检索 Worker 上传的文件,作为对 HIT 的 FileUploadAnswer 问题的回答。有关 FileUploadAnswer 答案的信息,请参阅 QuestionForm。

因此,此方法用于检索已上传的文件。听起来好像您正在尝试使用这种不正确的方法执行上传。如文档所述,请参阅QuestionForm和详细信息FileUploadAnswer以了解上传应如何工作

于 2009-07-12T02:33:39.197 回答