Pergunta

Eu estou trabalhando no Windows phone cliente um serviço com Oauth1 API.

Na API do google docs eu ter algo parecido com isto:

url: http://example.com/iphone/json/users/

method: GET

parâmetros:page_num=[int] - número de página, >=1, padrão=1.

Por padrão, a página num tudo funciona bem:

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

Quando eu executar este pedido eu receber resposta correta, com os dados.Mas se eu adicionar parâmetro (descomente TokenRequest.AddParameter("page_num", 2);) Eu receber "assinatura Inválida".Eu tentei enviar int e parâmetro de seqüência de caracteres.

        var TokenRequest = new RestRequest("/iphone/json/users/", Method.GET);

        TokenRequest.AddParameter("page_num", 2);

        HabraClient.ExecuteAsync(TokenRequest, (response =>
        {
            try
            {
                if (response.StatusCode == HttpStatusCode.OK)
                {

Recebo a mensagem "assinatura Inválida".Eu tentei parâmetro de seqüência de caracteres também:

        TokenRequest.AddParameter("page_num", "2");

API de provedor me disse, que eu tenho um problema com a assinatura da base de dados cadeia http://oauth.net/core/1.0/#sig_base_example Então, como eu posso ver ele?Ou talvez você possa me ajudar a resolver tudo isso problema?

Foi útil?

Solução

Eu acho que você está quebrando a estrutura de solicitação de...melhor verificar a solicitação de mais de um Violinista, mas tente escrever algo como

var TokenRequest = new RestRequest("/iphone/json/users/?page_num=2", Method.GET);

em vez de

var TokenRequest = new RestRequest("/iphone/json/users/", Method.GET);

TokenRequest.AddParameter("page_num", 2);

Esperança, ele iria ajudar.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top