来自IIS的HttpClient.Post被禁止

时间:2015-04-23 17:43:06

标签: c# wcf iis

我有一个C#/ WCF服务,需要向第三方公司处理发布请求。它将文件发送给这家外包公司。 C#代码,使用HttpClient.PostAsync并在Visual Studio 2013上使用IIS Express时没有任何问题。我在我的服务器上部署了自托管的WCF服务,它仍然有效!但是,当我在IIS(在同一台服务器上)部署此代码时,我有以下例外:System.Web.HttpException (0x80004005): Forbidden

以下是例外情况:

HTTP Code [Forbidden] 
Phrase="Forbidden" 
Message="Method: POST, RequestUri: 'https://third.party.company/api/sandbox//users/73437a40-3827-4df6-855f-c58c00750007', Version: 1.1, Content: System.Net.Http.MultipartFormDataContent, Headers:
{
  Accept: application/vnd.v1+json
  Authorization: Bearer *****
  Content-Type: multipart/form-data; boundary="ec9e6a56-103a-4728-a152-d86e836fe62e"
  Content-Length: 138986
}" Result = [<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don't have permission to access /api/sandbox//users/73437a40-3827-4df6-855f-c58c00750007
on this server.</p>
</body></html>
]

可能存在两个问题:

  • 帖子请求太大
  • IIS中有隐藏设置阻止请求

服务器在Windows Server 2012 R2和IIS 8.5下运行

你能帮助我吗?

非常感谢!

1 个答案:

答案 0 :(得分:0)

问题来自帖子网址中的两个斜杠:

https://third.party.company/api/sandbox//users/73437a40-3827-4df6-855f-c58c00750007

我只用一个问题解决问题。

我不明白,为什么IIS日志没有错误以及为什么在api之前截断网址而不是users