HTTP连接参数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HTTP连接参数相关的知识,希望对你有一定的参考价值。

我正在通过以下方式使用HTTP连接:

         HttpConnection _httpConnection = null;

         try {
             _httpConnection = (HttpConnection)Connector.open(_url);
         } catch(Exception e) { }

        byte [] postDataBytes = _postData.getBytes();
        _httpConnection.setRequestMethod(HttpConnection.POST);
        _httpConnection.setRequestProperty("User-Agent","Profile/MIDP-2.0 Configuration/CLDC-1.0");
        _httpConnection.setRequestProperty("Content-Language", "en-US");
        _httpConnection.setRequestProperty("Content-Type","application/x-www-form-urlencoded");
        _httpConnection.setRequestProperty("Connection", "close");
        _httpConnection.setRequestProperty("Content-Length", Integer.toString(_postData.getBytes().length));

        os = _httpConnection.openOutputStream();
        os.write(postDataBytes);
        os.flush();

此HTTP连接需要参数才能成功打开。例如,在WIFI网络上,它要求将“; deviceside = true; interface = wifi”添加到URL。

问题在于EDGE连接。每个国家/地区要求添加不同的参数。例如在黎巴嫩,它需要“; deviceside = false”,但是在KSA中,如果我添加此参数,则连接将无法打开。在美国,它需要不同类型的参数。问题是如何为所有具有相同参数的国家/地区建立HTTP连接。这样,无论将其下载到哪里,该应用程序都将成功建立Internet连接。

答案

欢迎来到BlackBerry上令人困惑的网络传输世界!您将从文章Connecting your BlackBerry - http and socket connections to the world开始。

这里是“只给我一个连接”的简单示例(注意,您将需要添加适当的错误处理;此外,下面的代码中的myURL应该没有附加连接描述符信息):

ConnectionFactory factory = new ConnectionFactory();
ConnectionDescriptor descriptor = factory.getConnection(myURL);
if (descriptor != null) {
    _httpConnection = (HttpConnection) descriptor.getConnection();
    ...
}
另一答案

尝试使用此链接melick-rajee.blogspot.com中引用的方法,并像使用它

_url = "http://www.example.com";

_httpConnection = (HttpConnection)Connector.open(_url + getConnectionString());

您必须签名应用程序才能使用此功能,否则应用程序将显示异常。要签署您的申请,只需转到Code Signing Keys

另一答案

要使用connectionFactory,似乎您需要设置BisBOptions

尝试一下:

    connFact = new ConnectionFactory();
    connFact.setTransportTypeOptions(TransportInfo.TRANSPORT_BIS_B,
                    new BisBOptions("mds-public"));

以上是关于HTTP连接参数的主要内容,如果未能解决你的问题,请参考以下文章

使用实体框架迁移时 SQL Server 连接抛出异常 - 添加代码片段

片段(Java) | 机试题+算法思路+考点+代码解析 2023

xml Eclipse模板(代码片段)检查参数并最终抛出IllegalArgumentException

Visual Studio 自定义代码片段在方法定义的参数列表中不起作用

HTTP客户端代码片段

有啥方法可以让 curl 连接并让我在输入时输入和发送身体片段?