三行代码  ›  专栏  ›  技术社区  ›  Community wiki

Mechanical Turk文件上传

  •  3
  • Community wiki  · 技术社区  · 2 月前

    我正在尝试在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 需要 问题标识符 我以为 "smiley" 会起作用。

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

    有什么想法吗?为什么它认为它是空的?向该服务传递参数时,顺序是否重要?

    1 回复  |  直到 9 月前
        1
  •  2
  •   barrowc    8 年前

    来自 API documentation :

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

    因此,此方法用于检索已上传的文件。听起来好像你正试图用这种不正确的方法进行上传。如文档所示,请参阅 QuestionForm 以及 FileUploadAnswer 了解上传的工作方式