Не удается отправить веб-запрос из .Net web api на удаленный сервер - PullRequest
0 голосов
/ 06 ноября 2019

Я пытаюсь отправить почтовый запрос на мой удаленный сервер из моего проекта .net web api, как указано ниже,

        [AcceptVerbs("GET", "POST")]
        public string POST()
        {

           var values = new NameValueCollection();
           values["login_id"] = "XXXX";
           values["password"] = "XXXXXXXX";

           var response = client.UploadValues("http://10.17.73.60/api/login", values);

           var responseString = Encoding.Default.GetString(response);

           Console.WriteLine("Rasindu :- " + responseString);

           return responseString;
        }

Это дает мне следующую ошибку,

Произошла ошибка. Удаленный сервер возвратил ошибку: (400) Bad Request. System.Net.WebException в System.Net.WebClient.UploadValues ​​(адрес Uri, метод String, данные NameValueCollection) в System.Net.WebClient.UploadValues ​​(адрес String, данные NameValueCollection) в EmployeeWebApiService.Controllers.AppController.OST: \ Users \ rdealk \ Documents \ Visual Studio 2017 \ Projects \ EmployeeWebApiService \ EmployeeWebApiService \ Controllers \ AppController.cs: строка 37 в lambda_method (закрытие, объект, объект []) в System.Web.Http.Controllers.ReflectedHttpActionDescriptor. <> c__DisplayClass6_1.b__3 (Экземпляр объекта, Object [] methodParameters) в System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.Execute (Экземпляр объекта, аргументы Object []) в System.Web.Http.Controllers.ReflectedHttpAecuDecutor (HttpControllerContext controllerContext, IDictionary`2 аргументы, CancellationToken cancellationToken) --- Конец трассировки стека из предыдущего расположения, где было сгенерировано исключение --- в System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (Задача задачи) в System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (Задача задачи) в System.Web.Http.Controllers.ApiControllerActionInvoker.d__1.MoveNext, в котором было найдено исключение, из которого было получено предыдущее исключение ()брошено в System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (задача-задача) в System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (задача-задача) в System.Web.Http.Controllers.)- Конец трассировки стека из предыдущего местоположения, в котором было сгенерировано исключение --- в System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (задача-задача) в System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (задача-задача) в System.Web.H. Dispatcher.HttpControllerDispatcher.d__15.MoveNext ()

Я мог успешно отправить вышеупомянутый запрос с помощью Postman, а также отправил вышеуказанный запрос другому серверу. ver (не удаленный сервер), что также было возможно. Поэтому я думаю, что есть проблема в конфигурации .net, но я понятия не имею об этом.

Ниже приведен мой ответ на мой запрос в почтальоне (успешно отправлен)

{
    "User": {
        "user_id": "1",
        "name": "Administrator",
        "gender": "1",
        "birthday": "1977-10-08T04:00:00.00Z",
        "photo_exists": "false",
        "pin_exists": "false",
        "login_id": "admin",
        "password_exists": "true",
        "updated_count": "0",
        "last_modified": "0",
        "start_datetime": "2001-01-01T00:00:00.00Z",
        "expiry_datetime": "2030-12-31T23:59:00.00Z",
        "security_level": "0",
        "display_duration": "20",
        "display_count": "3",
        "permission": {
            "id": "1",
            "name": "Administrator",
            "description": "this is a permission for Administrator",
            "filter": {
                "UserGroup": [
                    "1"
                ],
                "DeviceGroup": [
                    "1"
                ],
                "DoorGroup": [
                    "1"
                ],
                "ElevatorGroup": [
                    "1"
                ],
                "ZoneType": [
                    "-1"
                ],
                "AccessGroup": [
                    "0"
                ],
                "GraphicMapGroup": [
                    "1"
                ]
            },
            "module": {
                "Dashboard": {
                    "read": "true",
                    "write": "true"
                },
                "User": {
                    "read": "true",
                    "write": "true"
                },
                "Device": {
                    "read": "true",
                    "write": "true"
                },
                "Door": {
                    "read": "true",
                    "write": "true"
                },
                "Elevator": {
                    "read": "true",
                    "write": "true"
                },
                "Zone": {
                    "read": "true",
                    "write": "true"
                },
                "AccessControl": {
                    "read": "true",
                    "write": "true"
                },
                "Monitoring": {
                    "read": "true",
                    "write": "true"
                },
                "TA": {
                    "read": "true",
                    "write": "true"
                },
                "Setting": {
                    "read": "true",
                    "write": "true"
                },
                "Video": {
                    "read": "true",
                    "write": "true"
                },
                "Visitor": {
                    "read": "true",
                    "write": "true"
                }
            },
            "device": {
                "id": "547239744"
            },
            "user": {
                "id": "1",
                "id": "1319",
                "id": "1970",
                "id": "2345",
                "id": "2373"
            }
        },
        "inherited": "false",
        "user_group_id": {
            "id": "1",
            "name": "All Users"
        },
        "disabled": "false",
        "expired": "false",
        "fingerprint_template_count": "0",
        "face_count": "0",
        "card_count": "0",
        "need_to_update_pw": "false"
    },
    "Response": {
        "code": "0",
        "link": "http://biostar.com/response.html",
        "message": "Success"
    }
}

Заголовки в соответствии с запросом почтальона, который я отправил,

bs-session-id  -  97e09c82546d4d9a8b7c4422dc0a49d2
Content-Type   -  application/json;charset=UTF-8
Content-Length -  1510

Что такоелучшее решение для этой проблемы?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...