gpt4 book ai didi

c# - 如何解决无法建立连接,因为目标机器主动拒绝它 127.0.0.1 :64527

转载 作者:行者123 更新时间:2023-12-03 13:39:13 25 4
gpt4 key购买 nike

我有一个依赖于 Web API 应用程序的 MVC 应用程序,我将这两个应用程序托管在共享托管环境中。子域上的 API 和主域上的 MVC API 是 api.mydomain.com,MVC 是 mydomain.com,API 可以在我在 postman 或浏览器上尝试时正常工作,但 MVC 无法连接到它并出现以下错误。

No connection could be made because the target machine actively refused it 127.0.0.1:64527 Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Net.Sockets.SocketException: No connection could be made because the target machine actively refused it 127.0.0.1:64527

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:

[SocketException (0x274d): No connection could be made because the target machine actively refused it127.0.0.1:64527]
System.Net.Sockets.Socket.InternalEndConnect(IAsyncResult asyncResult) +6995036
System.Net.Sockets.Socket.EndConnect(IAsyncResult asyncResult) +84
System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception) +256

[WebException: Unable to connect to the remote server]
System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult) +606 System.Net.Http.HttpClientHandler.GetResponseCallback(IAsyncResult ar) +64

[HttpRequestException: An error occurred while sending the request.]
System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) +99
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) +58 System.Runtime.CompilerServices.TaskAwaiter1.GetResult()
+28 SMMClient.<Setting>d__119
1.MoveNext() in C:\Users\Dload\documents\visual studio 2017\Projects\SMM\SMMClient\Proc.cs:1369
System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) +99
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) +58 System.Runtime.CompilerServices.TaskAwaiter1.GetResult()
+28 SIMSClient.Controllers.<Index>d__0.MoveNext() in C:\Users\Dload\documents\visual studio
2017\Projects\SMM\SMMClient\Controllers\HomeController.cs:19

System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task
task) +99

System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task) +58

System.Web.Mvc.Async.TaskAsyncActionDescriptor.EndExecute(IAsyncResult
asyncResult) +97

System.Web.Mvc.Async.<>c__DisplayClass37.<BeginInvokeAsynchronousActionMethod>b__36(IAsyncResult
asyncResult) +17

System.Web.Mvc.Async.WrappedAsyncResult
1.CallEndDelegate(IAsyncResult asyncResult) +10
System.Web.Mvc.Async.WrappedAsyncResultBase1.End() +49

System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult
asyncResult) +34

System.Web.Mvc.Async.AsyncInvocationWithFilters.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3d()
+50 System.Web.Mvc.Async.<>c__DisplayClass46.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f()
+228 System.Web.Mvc.Async.<>c__DisplayClass33.<BeginInvokeActionMethodWithFilters>b__32(IAsyncResult asyncResult) +10

System.Web.Mvc.Async.WrappedAsyncResult
1.CallEndDelegate(IAsyncResult asyncResult) +10
System.Web.Mvc.Async.WrappedAsyncResultBase1.End() +49

System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethodWithFilters(IAsyncResult
asyncResult) +34

System.Web.Mvc.Async.<>c__DisplayClass2b.<BeginInvokeAction>b__1c()
+26 System.Web.Mvc.Async.<>c__DisplayClass21.<BeginInvokeAction>b__1e(IAsyncResult
asyncResult) +100

System.Web.Mvc.Async.WrappedAsyncResult
1.CallEndDelegate(IAsyncResult asyncResult) +10
System.Web.Mvc.Async.WrappedAsyncResultBase1.End() +48

System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult
asyncResult) +27

System.Web.Mvc.Controller.<BeginExecuteCore>b__1d(IAsyncResult
asyncResult, ExecuteCoreState innerState) +13

System.Web.Mvc.Async.WrappedAsyncVoid
1.CallEndDelegate(IAsyncResult asyncResult) +29
System.Web.Mvc.Async.WrappedAsyncResultBase1.End() +48

System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult)
+38 System.Web.Mvc.Controller.<BeginExecute>b__15(IAsyncResult asyncResult, Controller controller) +12

System.Web.Mvc.Async.WrappedAsyncVoid
1.CallEndDelegate(IAsyncResult asyncResult) +22
System.Web.Mvc.Async.WrappedAsyncResultBase1.End() +48

System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult) +28

System.Web.Mvc.Controller.System.Web.Mvc.Async.IAsyncController.EndExecute(IAsyncResult
asyncResult) +10

System.Web.Mvc.MvcHandler.<BeginProcessRequest>b__5(IAsyncResult
asyncResult, ProcessRequestState innerState) +21

System.Web.Mvc.Async.WrappedAsyncVoid
1.CallEndDelegate(IAsyncResult asyncResult) +29
System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +48
System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) +28 System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(IAsyncResult result) +9
System.Web.CallHandlerExecutionStep.InvokeEndHandler(IAsyncResult ar) +152 System.Web.CallHandlerExecutionStep.OnAsyncHandlerCompletion(IAsyncResult ar) +125



这就是我从 Global.asax.cs 连接到 API 的方式
public class MvcApplication : System.Web.HttpApplication
{
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
Proc.Configure("https://api.mydomain.com/");
}
}

这就是我调用资源的方式
public static class Proc
{
private static HttpClient _client;
public static void Configure(string Baseurl)
{
_client = new HttpClient();
_client.BaseAddress = new Uri(Baseurl);

_client.DefaultRequestHeaders.Clear();
//Define request data format
_client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

}

public static async Task<T> Settings<T>()
{
if (!string.IsNullOrWhiteSpace(Account.AccessToken))
_client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", Account.AccessToken);

var resp = await _client.GetAsync($"api/superadmin/settings");

var txt = await resp.Content.ReadAsStringAsync();

return JsonConvert.DeserializeObject<T>(txt);
}
}

我可以从本地 MVC 应用程序连接到实时 API,但无法从实时 MVC 应用程序连接到 API。

我会很高兴得到一些帮助。

最佳答案

当您的防火墙阻止连接或托管服务的进程未监听该端口时,就会发生此错误。
请参阅这些链接:

http://forums.asp.net/t/1223846.aspx/1

No connection could be made because the target machine actively refused it?

https://www.codeproject.com/Questions/426966/System-Net-Sockets-SocketExcep

关于c# - 如何解决无法建立连接,因为目标机器主动拒绝它 127.0.0.1 :64527,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55600630/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com