2009-07-11 5 views
3

Ich versuche Dateiuploads auf Mechanical Turk zu testen.Mechanischer Turk-Datei-Upload

Ich rufe die GetFileUploadURL Dienst und meine Abfrage-String sieht wie folgt aus:

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 

My HIT HTML ähnliche

<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> 

sieht Ich erhalte eine Fehlermeldung, dass "The value \"null\" is not valid for the parameter QuestionIdentifier" wieder selbst obwohl ich am passiere die QuestionIdentifier in.

Ich vermute, dass meine HIT HTML ist nicht das Ideale und ich vermisse etwas, was das viel leichter gemacht hätte. Könnte ich etwas anderes als <input type="file" name="smiley" value="" /> geschrieben oder es in irgendeiner Weise verbessert haben, dass dieser Webservice-Aufruf einfacher wäre? Ich bin wirklich nicht sicher, was ich in meinem GetFileUploadURL Anruf für QuestionIdentifier übergeben sollte, und ich nahm an, dass "smiley" funktionieren würde.

edit: ich wissen die smiley Basis auf den Ergebnissen zu sein angenommenes ich sehe, wenn ich GetAssignmentsForHIT nennen.

Irgendwelche Ideen? Warum denkt es seine Null? Ist die Reihenfolge wichtig, wenn Parameter an diesen Service übergeben werden?

Antwort

2

Vom API documentation:

Der GetFileUploadURL Betrieb erzeugt und gibt eine temporäre URL. Sie verwenden die temporäre URL eine Datei von einem Worker als Antwort auf eine Frage FileUploadAnswer für eine HIT hochgeladen abzurufen. Informationen zur FileUploadAnswer-Antwort finden Sie unter QuestionForm.

Diese Methode dient zum Abrufen von Dateien, die bereits hochgeladen wurden. Es klingt, als ob Sie versuchen, den Upload mit dieser Methode durchzuführen, die nicht korrekt ist. Wie die Dokumentation sagt, siehe QuestionForm und die Details auf FileUploadAnswer, um herauszufinden, wie der Upload funktionieren sollte

+1

Es sieht so aus, als ob ich eine Datei-Upload-Frage vom Template-basierten HIT-Designer * nicht * generieren könnte. Als ich jedoch auf "HITs einzeln erstellen" klickte, bekam ich einen netten kleinen Knopf, mit dem ich ein Datei-Upload-Steuerelement hinzufügen konnte und alles funktionierte wie beschrieben. Also, ja, ich denke, ich habe die falsche Kontrolle benutzt. Jetzt ... wie füge ich dieses Steuerelement von dem auf Vorlagen basierenden Designer hinzu? Ich möchte wissen, weil der "individuell verwalten" -Designer nur eine Kontrolle auf dem Formular zulässt. –