gpt4 book ai didi

c# - .NET 4 WCF REST 服务 404 一些请求

转载 作者:太空宇宙 更新时间:2023-11-03 11:38:47 25 4
gpt4 key购买 nike

我有一个 .NET 4.0 WCF REST 服务(用于生成和验证产品 key ),我在我的主机上使用 Arvixe(通过 Visual Studio 中的 Web 部署)设置了该服务。在我的 Windows 7 机器上,它在 IIS 上运行良好,但在我的主机上,除了基本服务 URL 之外,我从所有机器上收到 404 错误。例如:

  • "http://www.mydomain.com/LicensingServer/"- 按预期工作,浏览器请求返回响应(带或不带查询字符串参数)
  • “http://www.mydomain.com/LicensingServer/help”- 返回 404,并在 web.config 中打开默认的 WCf 帮助页面
  • "http://www.mydomain.com/LicensingServer/validate"- 从浏览器请求返回 404(带或不带查询字符串参数)

我的方法定义为:

[WebGet(UriTemplate = "?bla={bla}&etc={etc}")]  
public Stream GetLicenseKey(string bla, string etc)

[WebGet(UriTemplate = "/validate?item={item}")]
public Stream ValidateLicense(string item,)

我的 Global.ascx 有:

RouteTable.Routes.Add(new ServiceRoute("", new WebServiceHostFactory(), typeof(LicensingService)));

我的 web.config 几乎是向导生成的标准模板,但我添加了:

runAllManagedModulesForAllRequests="true"

我已经尝试在 web.config 中为“.svc”(这个已经存在于 IIS 管理器中)、“.*”和“*”添加几个新的处理程序,但都没有帮助。我还尝试按照 Arvixe 论坛中的建议添加带有 prefix="http://www.mydomain.com/"的 baseAddressPrefixFilter,但这也没有任何区别。

我还打开了 WCFTrace 日志记录,但到目前为止我未能成功从服务器获取日志文件,当我下载它时它显示为一个空的 0b 文件,但在服务器上显示为 280kb。

我猜这只是一个简单的配置问题,但我已经没有想法了。我不明白为什么它在我的本地(非常基本的安装)IIS 上运行良好,但在我的主机上运行不正常。

我知道这里还有关于 stackoverflow 的其他问题,但我已经抛出了大量问题并尝试了很多建议而没有解决这个问题。许多解决方案都与将处理程序添加到我尝试过的 web.config 相关。

谁能告诉我哪里出了问题,或者告诉我下一步该看哪里?

谢谢。

最佳答案

检查这篇文章:http://pranayamr.blogspot.com/2011/03/rest.html可能会帮助您轻松解决问题。

据我所知,没有这个必要

RouteTable.Routes.Add(new ServiceRoute("", new WebServiceHostFactory(), typeof(LicensingService)));

只需查看上面的链接以获取更多详细信息

关于c# - .NET 4 WCF REST 服务 404 一些请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5378079/

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