Я работаю над клиентским телефоном Windows для одной службы с API Oauth1.RestSharp на телефоне Windows с параметрами запроса
В API Docs у меня есть что-то вроде этого:
url: http://example.com/iphone/json/users/
method: GET
параметры: PAGE_NUM = [INT] - номер страницы,> = 1, по умолчанию = 1.
По умолчанию страница NUM все работает хорошо:
RestClient HabraClient = new RestClient("http://habrahabr.ru");
HabraClient.Authenticator = OAuth1Authenticator.ForProtectedResource("xxx", "yyyyyy", App.Tokens.Key, App.Tokens.Secret);
var TokenRequest = new RestRequest("/iphone/json/users/", Method.GET);
HabraClient.ExecuteAsync(TokenRequest, (response =>
{
try
{
if (response.StatusCode == HttpStatusCode.OK)
{
Когда я выполняю этот запрос я получаю правильный ответ с данными. Но если я добавлю параметр (uncomment TokenRequest.AddParameter («page_num», 2);), я получаю «Недействительная подпись». Я попытался отправить как int, так и параметр string.
var TokenRequest = new RestRequest("/iphone/json/users/", Method.GET);
TokenRequest.AddParameter("page_num", 2);
HabraClient.ExecuteAsync(TokenRequest, (response =>
{
try
{
if (response.StatusCode == HttpStatusCode.OK)
{
Получать сообщение «Invalid signature». Я попытался строковый параметр тоже:
TokenRequest.AddParameter("page_num", "2");
провайдер API сказал мне, что у меня есть проблема с подписью базы строки http://oauth.net/core/1.0/#sig_base_example Итак, как я могу это смотреть? Или, может быть, вы можете помочь мне решить всю эту проблему ?
Вы можете опубликовать более полные примеры рабочей версии _and_ нерабочей версии? –
Как вы создаете подпись? –
Джон, я обновил сообщение. Мэтт, подпись генерируется API, и я пытаюсь найти способ, как увидеть его в отладчике :) – Ponf