Понимание POST-запроса HttpWebRequest - PullRequest
0 голосов
/ 31 декабря 2018

Итак, у меня возникли некоторые проблемы с пониманием метода POST для C #, у меня есть несколько конечных точек REST для публикации информации о вашем прогрессе и так далее.Но, глядя на запрос, поступающий на стороне сервера, тела нет.Поэтому я начал копаться в этом, и должно быть что-то фундаментальное, чего мне не хватает.

Итак, request.GetRequestStream (). Write (body, 0, body.Length) фактически отправляет запрос конечной точке API.,Нужно ли реализовать что-то на сервере, чтобы справиться с этим поведением?У меня есть простой экспресс-сервис для бэкэнда.Потому что сейчас данные моего тела всегда пусты.

public async void postTime(String levelID, float time)
{
    try
    {
        String bearer = getBearerTokenFromCtx();

        HttpWebRequest request = (HttpWebRequest)WebRequest.Create(String.Format("{0}/user/level/{1}/highscore", BASE_PATH, levelID));
        request.ContentType = "application/json";
        request.Method = "POST";

        WebHeaderCollection headers = new WebHeaderCollection();
        headers.Add("Authorization", "Bearer " + bearer);
        request.Headers = headers;

        string json = "{\"time\": 0.01}";
        byte[] body = new UTF8Encoding().GetBytes(json);
        request.ContentLength = body.Length;
        request.GetRequestStream().Write(body, 0, body.Length);
        //WebResponse response = await request.GetResponseAsync();
    } catch (Exception e)
    {
        Debug.LogError(e);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...