Составление действительного NSMutableURLRequest с использованием POST для веб-службы TripIt.

Я пытаюсь заставить работать аутентификацию TripIt OAuth, но я нахожу документацию немного выше моей головы. Документация TripIt

В приведенном ниже абзаце из документации я попытался составить запрос POST для службы SOAP, где в документации указано, что помещать в заголовки и как создать xml для тела Http. В этом случае я понятия не имею, как построить свой запрос. У меня есть все значения, которые запрашивает служба, но я не знаю, как их установить, используя только информацию, приведенную ниже?

Чтобы получить токен авторизованного доступа, отправьте POST следующие параметры запроса на URL-адрес: https://api.tripit.com/oauth/access_token

  • oauth_consumer_key: открытый ключ потребителя.
  • oauth_nonce: одноразовый номер длиной не более 80 символов.
  • oauth_signature: подпись запроса…
  • oauth_signature_method: в настоящее время поддерживаются методы HMAC-SHA1.
  • oauth_timestamp: метка времени в секундах с начала эпохи.
  • oauth_token: токен запроса, полученный на шаге 1.
  • oauth_token_secret: секрет токена запроса, полученный на шаге 1.
  • oauth_version: НЕОБЯЗАТЕЛЬНО — предполагается, что это «1.0».

Может ли кто-нибудь помочь мне с тем, как я буду создавать запрос POST из приведенного выше?

Спасибо:)


person RickiG    schedule 24.11.2009    source источник


Ответы (1)


Способ сделать это самостоятельно — прочитать, как составляется тело запроса POST (оно очень похоже на строку запроса URL), построить строку из различных частей, а затем использовать -setHTTPBody:.

Большинство людей рекомендуют использовать ASIHTTPRequest, который, среди прочего, сделает эту работу за вас. См., в частности, класс ASIFormDataRequest и его метод -setPostValue:forKey:.

Вот более подробная информация о формате тела POST:

person Sixten Otto    schedule 24.11.2009
comment
Привет, Отто. Проблема в том, что каждый ресурс, который я нахожу, очень расплывчатый, и я хотел бы сделать все это сам в первый раз. Тем не менее, я просмотрел ASIHTTPRequest, и он хорошо документирован и, похоже, делает все, что мне нужно. Кроме того, я могу посмотреть в источнике вещи, в которых я запутался. Я посмотрел на некоторые другие обертки в коде Google, но кажется, что никто не тратит время на то, чтобы должным образом документировать свои библиотеки. Спасибо :) пс. извините, что звучу немного недовольно, просто потратьте полдня на хождение по кругу из-за отсутствия руководства. - person RickiG; 25.11.2009
comment
Я определенно могу понять (и приветствовать) дух DIY. И, честно говоря, я встречаю много веб-программистов, которые не имеют ни малейшего представления о том, как работает HTTP. С другой стороны, сборка корпуса POST не представляет особого интереса. Я отредактирую свой ответ с некоторыми ссылками на более подробную информацию. - person Sixten Otto; 25.11.2009
comment
Спасибо за дополнительные ссылки. Я нашел время, чтобы просмотреть их и погрузиться в пару тем. Это оказалось хорошо, так как следующей проблемой, с которой я столкнулся, было использование аутентификации заголовков :), но это сработало просто отлично. - person RickiG; 26.11.2009