【问题标题】:Blackberry Send & Receive Data Via Post Method [closed]黑莓通过 Post 方法发送和接收数据 [关闭]
【发布时间】:2012-12-02 04:31:30
【问题描述】:

通过 POST 方法在服务器上发送数据。 并接收 JSON 响应。 黑莓 - 回答。 快乐编码

【问题讨论】:

    标签: json post blackberry httpconnection


    【解决方案1】:
    StringBuffer postData = new StringBuffer();
    
                httpConn = (HttpConnection) Connector.open(URL);
                httpConn.setRequestMethod(HttpConnection.POST);
    
                postData.append("?username="+username);
                postData.append("&password="+pass);
                postData.append("&projectcode="+projectid);
                String encodedData = postData.toString();
    
                httpConn.setRequestProperty("Content-Language", "en-US");
                httpConn.setRequestProperty("Content-Type","application/x-www-form-urlencoded");
                httpConn.setRequestProperty("Content-Length",(new Integer(encodedData.length())).toString());
                byte[] postDataByte = postData.toString().getBytes("UTF-8");
    
                OutputStream out = httpConn.openOutputStream(); 
                out.write(postDataByte);
                out.close();
    
                httpConn.getResponseCode();
    
                is = httpConn.openInputStream(); 
    
                StringBuffer buffer = new StringBuffer();
                int ch = 0;
    
                while (ch != -1) {
                    ch = is.read();
                    buffer.append((char) ch);
                }
    
                String json = buffer.toString();
    
                Dialog.alert("Received Json: "+json);
    

    【讨论】:

    • 有一些我不喜欢的东西,但最糟糕的是,为了让这段代码发出它最后所做的 Dialog.alert(..),它必须正在运行在事件线程上,当然它不应该这样做,因为它会阻塞网络活动。这不是生产代码。
    • @PeterStrange 这只是为了调试目的,在屏幕上显示输出。是的,这不是我同意的生产代码
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-12
    相关资源
    最近更新 更多