2009-07-11 5 views
3

Я пытаюсь проверить загрузки файлов на Mechanical Turk.Загрузка файла 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="" />, или улучшить его каким-то образом, чтобы этот вызов веб-службы был проще? Я действительно не уверен, что я должен был передать в своем GetFileUploadURL вызове для QuestionIdentifier, и я предположил, что "smiley" будет работать.

редактировать: Я знаю, что его должно быть smiley база по результатам, которые я вижу, когда я называю GetAssignmentsForHIT.

Любые идеи? Почему это кажется нулевым? Имеет ли значение порядок при передаче параметров этой службе?

ответ

2

От API documentation:

эксплуатацию GetFileUploadURL генерирует и возвращает временный URL. Вы используете временный URL-адрес для извлечения файла, загруженного рабочим как ответ на вопрос FileUploadAnswer для HIT. Для получения информации об ответе FileUploadAnswer см. QuestionForm.

Так что этот метод предназначен для извлечения файлов, которые уже были загружены. Кажется, что вы пытаетесь выполнить загрузку с помощью этого метода, который является неправильным. Как говорится в документации, см. QuestionForm и подробную информацию о FileUploadAnswer, чтобы узнать, как должна работать загрузка.

+1

Похоже, я мог * не * генерировать вопрос с загрузкой файлов из конструктора HIT на основе шаблонов. Однако, когда я нажал «создать HIT в отдельности», у меня появилась небольшая кнопка, которая позволила мне добавить элемент управления загрузкой файлов, и все работало как задокументировано. Итак, да, наверное, я использовал неправильный контроль. Теперь ... как добавить этот элемент управления из шаблонного дизайнера? Я хочу знать, потому что «управлять индивидуально» дизайнером, по-видимому, допускает только один элемент управления в форме. –