Я пытаюсь использовать успокоительную API MTurk и POST для createHIT с HITTypeID, однако, я получаю следующее сообщение об ошибке:Mechanical Turk отвергает POST запросы
<?xml version="1.0"?>
<CreateHITResponse>
<OperationRequest>
<RequestId>199c9aff-86a4-4280-8d2f-d956a53515b0</RequestId>
</OperationRequest>
<HIT>
<Request>
<IsValid>False</IsValid>
<Errors>
<Error>
<Code>AWS.MissingParameters</Code>
<Message>Your request is missing required parameters. Required parameters include Question. Question is a required parameter. (1376962818123)</Message>
<Data>
<Key>Parameter</Key>
<Value>Question</Value>
</Data>
<Data>
<Key>Description</Key>
<Value>Question is a required parameter</Value>
</Data>
<Data>
<Key>Description</Key>
<Value>Question is a required parameter</Value>
</Data>
<Data>
<Key>Parameter</Key>
<Value>Question</Value>
</Data>
</Error>
</Errors>
</Request>
</HIT>
</CreateHITResponse>
Из моего понимания, название не должно быть если требуется Hittype. Таким образом, похоже, что API фактически не просматривает тело POST.
Как бы я мог обойти это? Что-то не так с моей просьбой?
Запрос:
<CreateHITRequest>
<HITTypeId>HITTYPEID</HITTypeId>
<MaxAssignments>1</MaxAssignments>
<LifetimeInSeconds>604800</LifetimeInSeconds>
<Question><QuestionForm Structure></Question>
</CreateHITRequest>
В документации упоминается POSTING для REST api в нескольких местах. Однако он не охватывает его подробно. Как упоминается в форумах, а также поддержка чата AWS. Запросы GET ограничены символами <8k. – cxdf
http://docs.aws.amazon.com/AWSMechTurk/2008-08-02/AWSMechanicalTurkRequester/MakingRequests_MakingRESTRequestsArticle.html – cxdf
@ c-qjv0xfi Вы не можете публиковать XML, если вы не используете SOAP. Документация достаточно ясна. Вам нужно либо URL-кодировать ваш запрос, либо использовать SOAP. –