【问题标题】:ClickOnce, WebService "The request failed with HTTP status 403 : Forbidden." IE browserClickOnce, WebService “请求失败,HTTP 状态 403:禁止。” IE浏览器
【发布时间】:2011-08-02 01:55:18
【问题描述】:
请帮忙!!!
我有一个 ClickOnce 应用程序,它连接到 WebService 以从数据库中获取数据。
由于我在本地机器(IE Web 浏览器)中使用代理服务器,我收到错误“请求失败,HTTP 状态 403:禁止访问。”。
- 为什么 ClickOnce 应用程序。将有关我的本地浏览器的代理信息发送到 WebService?
- 我需要做些什么来绕过这个,改变 ClickOnce 应用程序。还是给WebService,有什么变化?
我仍然担心为什么 ClickOnce 应用程序。发送有关 IE 而不是其他浏览器的信息,还是发送有关默认浏览器的信息?
谢谢,
【问题讨论】:
标签:
clickonce
http-status-code-403
【解决方案1】:
ClickOnce 使用代理设置的唯一地方是下载应用程序文件。您遇到的问题与 ClickOnce 无关——它是您的代码调用 Web 服务。
我的猜测是问题不在于正在应用代理设置,而在于它们没有被应用。我假设您的公司需要代理设置?
您没有说您的服务是 WCF 服务还是 asmx Web 服务或什么。如果它是 WCF 服务,您可能会在调用服务时尝试这样的操作,因此它使用代理设置。
YourService.YourServiceClient prx = new YourService.YourServiceClient();
System.ServiceModel.WSHttpBinding wsb =
(System.ServiceModel.WSHttpBinding)prx.Endpoint.Binding;
//proxyURi should be something like 127.0.0.1:8888
wsb.ProxyAddress = new Uri(proxyURI);
//set to true if you want to bypass proxy on intranet
wsb.BypassProxyOnLocal = false;
wsb.UseDefaultWebProxy = false;