3

使用我的 Windows Phone(HttpWebRequest 对象),我试图访问部署在 IIS 上的 WCF REST 服务。

当我通过 Wi-Fi 发出请求时,我得到了成功的响应。当我尝试通过 3G 调用相同的服务时,我得到以下响应:

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
"http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
  <card id="FEHLER" title="ERROR">
    <p>
      The requested item could not be loaded <br/>       Wrong MIME-Type
      <do type="prev" label="back">
        <prev/>
      </do>
    </p>
  </card>
</wml>

我需要修复什么才能使事情正常进行(客户端或服务器设置<-由于我使用托管,服务器的设置很难更改)?

4

2 回答 2

2

原来我需要删除下面的注释行。

        HttpWebRequest hwrq = (HttpWebRequest)WebRequest.Create(url);
        //hwrq.Accept = "text/xml";   //this was causing problems (only on 3G)
        hwrq.Method = "POST";
于 2012-05-13T22:40:58.510 回答
0

只需确认在 wifi 上发送的 http 请求的 Content type 头,并将其与 3G 请求进行比较。通过 3G 网络的请求可能会在标头中生成不同的内容类型。您可以使用 fiddler 进行检查。

于 2012-05-02T10:23:49.193 回答