C# 从anuglar应用程序连接到外部webservice方法

C# 从anuglar应用程序连接到外部webservice方法,c#,asp.net,angularjs,asp.net-mvc,C#,Asp.net,Angularjs,Asp.net Mvc,我是一个完全的新手,所以如果这个问题看起来很愚蠢,请原谅我。 我得到了一个直接指向外部服务POST方法的url,它是服务总线的一部分。我的前端应用程序是用angularJS编写的。如何连接到此方法?到目前为止,我一直在ASP.NET MVC Controller中使用一些模拟数据,并在angular service中调用这些数据: MyService.search = function (parameters) { return $http.post('/Home/Search', pa

我是一个完全的新手,所以如果这个问题看起来很愚蠢,请原谅我。 我得到了一个直接指向外部服务POST方法的url,它是服务总线的一部分。我的前端应用程序是用angularJS编写的。如何连接到此方法?到目前为止,我一直在ASP.NET MVC Controller中使用一些模拟数据,并在angular service中调用这些数据:

MyService.search = function (parameters) {
    return $http.post('/Home/Search', parameters);
};
调用此外部方法的方式是什么?我应该在控制器中构建一些逻辑吗?创建一个调用此外部服务的Web服务? 我将非常感谢你的帮助

编辑:简单地将模拟URL替换为正确的调用搜索方法后出现的错误:

[异常…”“nsresult:“0x805e0006()”位置:“JS帧::::createHttpBackend/<::行10704”数据:否]


返回日志fn.apply(控制台,args)

你可以尝试几件事

  • 使用浏览器连接到服务(如果可以,请在$http.post中尝试)
  • 确保服务已启用CORS,否则无法从其他域连接

  • 您是否尝试使用完整url调用它?当我简单地将模拟url(/Home/Search)更改为我得到的url时,我在点击搜索按钮后出现以下异常:[exception…”nsresult:“0x805e0006()”位置:“JS frame:::::createHttpBackend/<::line 10704”数据:否]返回logFn.apply(控制台,args);最好将错误信息放在问题中。这样我们就可以更好地阅读它了,我纠正了一些小的拼写错误,现在我得到了丢失的CORS错误。如果我想创建自己的服务(调用此外部服务),以便能够在将数据传递到UI之前稍微修改数据,该怎么办?这是可能的。。。但是您仍然需要修复CORS错误,这只能在服务器端完成。这意味着,如果您无法更改此设置,您需要询问服务的创建者,我已经写信给服务开发者。您能告诉我应该在哪里查找如何创建呼叫外部服务的信息吗?不知道是不是这一天,但我甚至不知道如何询问谷歌。如果你想写自己的服务,有几件事你需要考虑。第一个问题是我将使用什么技术(例如WCF),如果您确定了您的技术,您可以看看如何从您自己的服务调用到您想要的服务。并操纵来自该服务的数据。您不会从angular应用程序调用外部服务,而是调用自己的服务,该服务调用external service.Hi。我刚刚制作了一个ApiController,它调用所有的外部方法(它可以工作!)。这是个好习惯吗?或者应该有一个单独的服务层,然后控制器调用此服务?