REST API: объединить информацию для входа и действия API с помощью C #? - PullRequest
1 голос
/ 06 марта 2012

Я пытаюсь использовать name.com API в C #.API имеет различные действия, включая / Login, / account / get, / create / domain и другие.Вы можете найти документацию здесь

Метод / Login - это POST, а тело - JSON, и это сделано с помощью HttpWebRequest, и он работает успешно.Он возвращает что-то вроде:

    {
        "result": {
                    "code":100,
                    "message":"Command Successful"
                  },
        "session_token":"a59a09be6562e977a166fdd2b345a235c8b6c724"
    }

Но после входа в систему мне нужно использовать другие службы (запустить другие действия API).

Здесь я отправляю еще один запрос HttpWebRequest как:

    string base = "https://api.dev.name.com/api/"
    HttpWebRequest request;
    request = WebRequest.Create(base + "account/get") as HttpWebRequest;  
    ....
    ....

Вместо того, чтобы возвращать информацию об учетной записи, он возвращает ошибку, которая говорит:

    {
      "result": 
      {
        "code":251,
        "message":"Authentication Error - No Api Session Or Username Token Supplied"
      }
    }

Я думаю, что мне нужен способ отправить запрос вместе с информацией для входа в систему.Сообщение об ошибке здесь «Ошибка аутентификации - нет сеанса Api или маркера имени пользователя»

ПРИМЕЧАНИЕ. Для этого API есть пример кода и классов PHP.Вот ссылка Документация API

1 Ответ

3 голосов
/ 06 марта 2012

См. Стр. 18 документации .Вам необходимо передать возвращенный токен сеанса в качестве заголовка запроса:

Api-Session-Token: <session_token>

Итак, как только вы получите ответ и получите токен, вы просто добавите следующую строку:

httpWebRequest.Headers.Add("Api-Session-Token", <session_token>);
...