【发布时间】:2018-01-29 22:12:14
【问题描述】:
我在 Web 窗体项目中有一个超链接,它的 href 设置为 Web api 调用。
http://www.domain1.com/form.aspx有
<a href="http://www.domain2.com/somewhere/houston" target="_blank">Test</a>
“休斯顿”是参数。 单击链接时出现 404 错误。当我使用上面的链接调试我的 Web API 2 应用程序时,一切正常。但是 Web 表单应用程序似乎找不到它。我也试过:
<a href="http://www.domain2.com/somewhere?id=houston">Test</a>
我什至尝试过:
<a href="http://www.domain2.com/somewhere.aspx?id=houston">Test</a>
我在“domain2”上的项目在 MVC Web API 2 中。我做错了什么?我错过了一些东西。
我没有收到任何数据作为回报,也没有等待任何事件。它只是在一个新选项卡中打开,只需要参数并且什么都不返回到调用页面。是路由问题吗?蒂亚!
【问题讨论】:
-
你的 webapi 方法是什么样的(带参数)?
-
这不是关于 webforms 应用程序,而是关于你的 web api。您的路由是否理解“某处/休斯顿”?默认路由会将其发送到控制器“Somewhere”,动作“Houston”,你有吗?或者你有这个网址的特殊路线吗?
-
您的 Web API 方法是否标有
[HttpPost]。请注意,超链接将发送 GET,而不是 POST 或其他动词。 -
它用 GET 标记。至于路由,为什么我调试的时候在localhost能工作,否则不行。
-
@Andrei 感谢您为我指明路线。路径错了。我的大多数电话都下降了 2 级。但是这个特殊的电话是在同一级别。取出 ../../ 并添加控制器,它就可以工作了。谢谢!
标签: asp.net asp.net-mvc asp.net-web-api2