启用javascript在https或http后黑莓
Enable javascript in https or http POST blackberry
我正在尝试使用POST方法连接https连接。操作系统版本是6.0,当我在浏览器中调用我的url得到正确的响应,但在我的应用程序我得到错误的响应。我想在post中发送User-Agent。
conn = (HttpsConnection) Connector.open(Url, Connector.READ_WRITE);
conn.setRequestMethod(HttpsConnection.POST);
conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
conn.setRequestProperty("User-Agent",
"Mozilla/5.0 (BlackBerry; U; BlackBerry 9800; en-GB) AppleWebKit/534.1+ (KHTML, like Gecko) Version/6.0.0.141 Mobile Safari/534.1+");
conn.setRequestProperty("Content-length", ""+userAgent.getBytes().length);
URLEncodedPostData oPostData = new URLEncodedPostData(URLEncodedPostData.DEFAULT_CHARSET, false);
oPostData.append("User-Agent",userAgent);
OutputStream finalOut = conn.openOutputStream();
finalOut.write(oPostData.getBytes());
finalOut.flush();
finalOut.close();
rc = conn.getResponseCode();
我得到响应代码302,但它的错误响应。所以我的客户说"你需要在应用程序中启用JS代码,因为浏览器正确重定向"。请帮助我如何在代码中启用JS
您正在与服务器进行直接的单个http连接,并且您将获得单个响应(如果连接成功)。与Javascript无关,因为您没有使用浏览器。
302是重定向响应;这意味着服务器希望客户端连接到其他地方。我不记得OTTOMH如果BB的连接器支持自动重定向,但如果是,你可能想启用它。
我在自己的原生BB应用中遇到了类似的情况。事实证明,问题部分在于您使用的是哪一种特定的"通信通道"来连接网络?正如你所了解的,BB有大约6个不同的通道(不包括USB或蓝牙),每个通道都有自己的方式来设置和建立手机和后端之间的连接。
看一下ConnectionFactory,首选传输类型,ConnectionDescriptors和其他相关类,以帮助简化此操作。
接下来,这对你来说是一个问题——就像对我一样——取决于你最终使用什么连接来连接,你可能会从服务器收到302重定向错误。如果真的发生了,也不是什么大问题……只需检查是否存在一个"Location"头字段,它将被添加,这将让你知道你应该使用的新URL来获得所需的资源。
…下面的内容:
if (httpCon.getResponseCode() == 302 && httpCon.getHeaderField("Location") != null)
{
String redirectedURL = httpCon.getHeaderField("Location");
// use this in your communications to get your content.
}
相关文章:
- "访问控制允许起源”;通过javascript从http页面调用同一网站的httpsurl时出现问题
- http://oauth.googlecode.com/svn/code/javascript/oauth.js已关闭,
- 添加@javascript标记时,Cucumber中的HTTP身份验证失败
- javascript regexp,用于验证一开始没有http的url
- JQuery/Javascript来获取给定URL的Http Header详细信息
- 通过HTTP头限制Javascript的执行
- HTTP请求使用cURL,但在浏览器中使用javascript时会得到CORS响应
- 使用Javascript获取自定义HTTP标头
- 如何使用在 Javascript 中对 API 进行 HTTP 调用
- 多个 Javascript 文件,但只有一个 HTTP 请求
- 如何使用javascript在网络上仅将UTC时间戳转换为本地时间?从 http://openweathermap.or
- JavaScript 中的 http request in while 循环
- 在javascript中获取 http.post,然后发送响应
- Javascript HTTPS帧访问父HTTP帧
- 在Javascript中发送http请求时出错
- 无法从JavaScript访问cookie,但在HTTP标头上可见
- 如何访问您没有访问的HTTP响应的标头't使用javascript通过AJAX发送
- 离开页面时将网址从HTTPS更改为HTTP javascript
- 如何区分图片和链接http JavaScript
- 灵活的http JavaScript "包含在HTML页面中