Question

I'm working on Windows phone client for one service with Oauth1 API.

In API docs I have something like this:

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

method: GET

parameters: page_num=[int] - page number, >=1, default=1.

For default page num everything works well:

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

When I execute this request I receive correct response with data. But if I add parameter (uncomment TokenRequest.AddParameter("page_num", 2); ) I receive "Invalid signature". I have tried to send both int and string parameter.

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

        TokenRequest.AddParameter("page_num", 2);

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

I receive message "Invalid signature". I have tried string parameter too:

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

API provider told me, that I have a problem with signature base string http://oauth.net/core/1.0/#sig_base_example So, how can i view it? Or maybe you can help me to solve all this problem?

Was it helpful?

Solution

I think you are breaking the request structure... better to check the request over Fiddler, but try to write something like

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

instead of

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

TokenRequest.AddParameter("page_num", 2);

Hope, it would help.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top