无法将Web请求从.Net Web API发送到远程服务器

我正尝试从.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)错误的请求。      System.Net.WebException在   System.Net.WebClient.UploadValues(URI地址,String方法,   System.Net.WebClient.UploadValues(String处的NameValueCollection数据)   地址,NameValueCollection数据)在   EmployeeWebApiService.Controllers.AppController.POST()在   C:\ Users \ rdealk \ Documents \ Visual Studio   2017 \ Projects \ EmployeeWebApiService \ EmployeeWebApiService \ Controllers \ AppController.cs:line   37在lambda_method(Closure,Object,Object [])在   system.web.Http.Controllers.ReflectedHttpactionDescriptor.actionExecutor。 c__DisplayClass6_1.b__3(Object   实例,Object [] methodParameters)在   system.web.Http.Controllers.ReflectedHttpactionDescriptor.actionExecutor.Execute(Object   实例,Object []参数)位于   system.web.Http.Controllers.ReflectedHttpactionDescriptor.ExecuteAsync(HttpControllerContext   controllerContext,IDictionary`2参数,CancellationToken   cancelToken)---从先前位置开始的堆栈结束跟踪   引发了异常---   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.actionFilterResult.d__5.MoveNext()   ---从上一个引发异常的位置开始的堆栈跟踪-   System.Runtime.CompilerServices.Taskawaiter.ThrowForNonSuccess(任务   任务)   System.Runtime.CompilerServices.Taskawaiter.HandleNonSuccessAndDebuggerNotification(任务   任务)   system.web.Http.Dispatcher.HttpControllerDispatcher.d__15.MoveNext()    

我可以使用邮递员成功发送上述请求,也可以将上述请求发送到其他服务器(非远程服务器)。因此,我认为.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","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","Device": {
                    "read": "true","Door": {
                    "read": "true","Elevator": {
                    "read": "true","Zone": {
                    "read": "true","accessControl": {
                    "read": "true","Monitoring": {
                    "read": "true","TA": {
                    "read": "true","Setting": {
                    "read": "true","Video": {
                    "read": "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

此问题的最佳解决方案是什么?

kenny5036888 回答:无法将Web请求从.Net Web API发送到远程服务器

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3152820.html

大家都在问