.NET CF 3.5中的HttpWebRequest和SSL

时间:2009-05-11 17:23:37

标签: windows-mobile ssl compact-framework httpwebrequest httpwebresponse

我们在.NET CF 3.5 / Windows Mobile 6中调用了一些非常简单的JSON Web服务,看来我们遇到了这个错误: http://blogs.msdn.com/andrewarnottms/archive/2007/11/19/why-net-compact-framework-fails-to-call-some-https-web-servers.aspx

真的差不多两年了,这不是固定的吗?看起来像一个非常常见的场景,从.NET CF 3.5调用安全Web服务。 必须有一些解决方法。任何人都知道此问题是否有修复或解决方法?

以下是我们用于拨打电话的代码:

private string GetJsonResponse(string command, Dictionary<string, string> parameters)
{
    string requestUri = BuildRequestUri(command, parameters);

    HttpWebRequest webRequest = (HttpWebRequest)HttpWebRequest.Create(requestUri);
    webRequest.AllowWriteStreamBuffering = true;

    cookieManager.PublishCookies(webRequest);
    HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse();

    string jsonResponse = string.Empty;

    using (StreamReader streamReader = new StreamReader(webResponse.GetResponseStream()))
    {
        jsonResponse = streamReader.ReadToEnd();
    }

    webResponse.Close();

    return jsonResponse;
}

2 个答案:

答案 0 :(得分:1)

没有发布的修复程序,没有。我相信微软计划在不久的将来修复3.5版平台生成器QFE,但这对2.0用户没有任何好处,我不确定它如何影响不使用Platform Builder的WinMo开发人员(他们'没有就CF的一般可用性SP版本发布任何公告。

解决方法仍然是您引用的博客文章中概述的解决方法。例如,我们实现了一个全新的基于SSL的套接字(包括将SSL库移植到CF)来绕过它。

答案 1 :(得分:-2)

您检查OpenNETCF。有一个免费的社区版。 http://www.opennetcf.com/Products/SmartDeviceFramework/tabid/65/Default.aspx