我有一个 WCF 数据服务作为 Azure Web 角色托管在 Azure 中。添加了用于身份验证的 Http 模块。自定义 Http 模块查看请求 header 中的授权 header 并对用户进行身份验证。
当我向 WCF 数据服务发出 Http 请求时,遇到两个问题。发生 Http 重定向。
我向 http:\northwindsample.cloudapp.net\SampleService.svc 发出请求。我收到的消息是“没有监听 http://rd00155d341b52/SampleService.svc 的操作,但有监听 http://northwindsample.cloudapp.net/SampleService.svc/ 的操作,因此您将被重定向到那里。
虽然我向 http:\northwindsample.cloudapp.net\SampleService.svc 发出请求,但它不知何故会转到 http://rd00155d341b52/SampleService.svc然后被重定向到实际的服务。我收到 Http 307,并且在重定向中缺少授权 header 。
后来我发现当我添加尾部斜杠时,就没有发生重定向。 由于缺少尾部斜杠,如何防止这种重定向?此外,问题还在于授权 header 未发送到重定向的 Uri。
谢谢
最佳答案
看看这个:
http://gavinmckay.wordpress.com/2009/03/24/howto-fix-wcf-host-name-on-iis/
要在 Azure 中更新此内容,您需要创建启动任务或使用 IIS 管理 API,如下所示:
关于Azure WebRole 和 WCF 数据服务 - 防止重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9207568/