Asp.net 获取控制器方法调用方(第三方Web服务)

Asp.net 获取控制器方法调用方(第三方Web服务),asp.net,asp.net-mvc,Asp.net,Asp.net Mvc,是否可以检索调用我的控制器方法的第三方Web服务的URL? 像Request.Current.Url这样的东西指的是我自己的Url(/someController/someAction/) 第三方Web服务正在向my/someController/someAction发送HTTP POST数据,我希望在不使用 return Content["some response"] 这将迫使我退出该方法。因为答案是纯文本,所以我想使用HTTPPOST发送它 我实际上试图做的是响应调用webservice

是否可以检索调用我的控制器方法的第三方Web服务的URL? 像Request.Current.Url这样的东西指的是我自己的Url(/someController/someAction/)

第三方Web服务正在向my/someController/someAction发送HTTP POST数据,我希望在不使用

return Content["some response"]
这将迫使我退出该方法。因为答案是纯文本,所以我想使用HTTPPOST发送它


我实际上试图做的是响应调用webservice而不退出我的方法(return Content()将退出),这样我就可以调用其他方法来处理webservice发送给我的数据。我想首先告诉webservice我收到了他们的资料,然后进行处理,这样当处理错误发生时,webservice至少不会重新发送旧数据。除了构建自己的HTTP post,还有其他方法吗?

您可以依赖Request.UrlReferer,但您的想法似乎不太好。最好的解决方案可能是启动新线程进行数据处理,并坚持使用
返回内容

是否尝试了HttpRequest.UserHostName?或HttpRequest.Headers来检查主机变量…与我在此期间实现它的方式完全相同:)。标记为最终答案。顺便说一句,我怀疑UrlReferer不走运,因为服务会立即调用该方法,所以没有referer。URL referer仅在用户通过上一页的链接到达当前页时返回值,我相信,但我没有测试它。