Windows phone 7 获取对https的请求-未找到。wp7

Windows phone 7 获取对https的请求-未找到。wp7,windows-phone-7,https,get-request,Windows Phone 7,Https,Get Request,这是我第一次为wp7编写代码,我遇到了一些麻烦。当我声明令牌_req=”时http://api.server.com/oauth/token“没问题,但当我声明*https时,它无法连接,因此我得到“远程服务器返回了一个错误:NotFound”。第行出现错误 网络响应= (HttpWebResponse)request.EndGetResponse(结果) 此外,我不能用IE连接到这个url,这是我用wp7 emulator得到的=\ Error Not Found是一条通用的WCF错误消息,您

这是我第一次为wp7编写代码,我遇到了一些麻烦。当我声明令牌_req=”时http://api.server.com/oauth/token“没问题,但当我声明*https时,它无法连接,因此我得到“远程服务器返回了一个错误:NotFound”。第行出现错误

网络响应= (HttpWebResponse)request.EndGetResponse(结果)


此外,我不能用IE连接到这个url,这是我用wp7 emulator得到的=\

Error Not Found是一条通用的WCF错误消息,您最好使用Fiddler,尽管根据我的经验,您还没有设置HTTPS来处理您的服务,如果您想要设置HTTPS连接,您将需要更多的魔法,您可以从


您正在尝试使用自签名证书吗


如果是这样,那么您必须在手机上安装证书,这只能通过将WebBrowserTask指向证书的远程url来完成。这很糟糕,但这是唯一的方法。

您还没有设置HTTPS来使用您的服务这意味着什么?如果我说https://twitter.com 而不是我的api服务器-it work=\n我知道,这个api服务器也有http地址,但是http://api.server.com/oauth/token/ 基本上我的意思是,承载WCF服务的IIS服务器可能未设置为仅接收HTTPS连接HTTP连接(默认)如果你想让HTTPS正常工作,你的WCF服务也需要一些证书等。原因是。。。成功是因为他们做出了改变。我想你需要多读一些关于WCF服务和IIS的知识,如果你想设置HttpSy,你也可以通过电子邮件给自己发送证书。不是自签名=\而且我没有一个手机模拟器
const string results
 private void button1_Click(object sender, RoutedEventArgs e)
        {
            string token_req = "https://api.server.com/oauth/token";
            string client_id = "...";
            string client_secret = "...";
            string username = Field_Login.Text;
            string password = Field_Password.Password;
            string token_req_param = "grant_type=password&client_id=" + client_id + "&client_secret=" + client_secret + "&username=" + username + "&password=" + password;



            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(token_req+"?"+token_req_param);

            request.BeginGetResponse(GetCallback, request);
        }

        void GetCallback(IAsyncResult result)
        {
            WebRequest request = (HttpWebRequest)result.AsyncState; 
            WebResponse response = (HttpWebResponse)request.EndGetResponse(result);
            using (StreamReader httpwebStreamReader = new StreamReader(response.GetResponseStream()))
            {
                results = httpwebStreamReader.ReadToEnd();

            }
            response.Close();

        }