【问题标题】:Wcf Json Post works in VS but not in IIS 7.5Wcf Json Post 在 VS 中有效,但在 IIS 7.5 中无效
【发布时间】:2012-03-28 13:01:13
【问题描述】:

我在 IIS 中有一个部分工作的 WCF 服务。我的 GET 请求工作正常,但 POSTS 仅在我使用 Visual Studio 时才有效。当我使用 IIS 时,我收到错误 400 错误请求。任何人都可以帮助解决这个问题。这是部分代码。

public string AddHost(Host host)
{
    HostDal dal = new HostDal();
    dal.CreateHost(host);
    return Utils.Message;
}

界面

[OperationContract]
[WebInvoke(Method = "POST", UriTemplate = "/addhost", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json)]
string AddHost(Host host); 

使用 Fiddler 我发布这样的 json:

{
"名称":"newhost19",
"Mac":"ca:99:11:22:33:43",
"图像":"测试",
“组”:“测试”,
"描述":"测试",
“内核”:“测试”,
"BootImage":"测试",
“参数”:“测试”,
“脚本”:“测试”
}

就像我说的,如果我使用 IIS 发布到 http://localhost/web/ClientSvc.svc/addhost,我会收到错误 400。
如果我使用 VS 发布到 http://localhost:49807/web/ClientSvc.svc/addhost 它工作正常
谢谢

【问题讨论】:

  • 当您转到localhost/web/ClientSvc.svc 时,您会看到服务公告页面吗?
  • 是的。这很奇怪,因为该服务正在运行。我也有一些可以正常工作的GETS。只有 POST 没有。
  • 如果有人感兴趣,最终是文件夹权限问题。我仍然不确定GETS为什么起作用。
  • 你应该回答你自己的问题并接受它。

标签: json wcf iis rest post


【解决方案1】:

如果有人有兴趣,它最终是一个文件夹权限问题。我仍然不确定GETS为什么起作用

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-02-10
    • 1970-01-01
    • 1970-01-01
    • 2015-01-08
    • 2011-07-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多