开发者

Open HTTP Connection

I need to open an HTTP connection through the wireless internet service on a Blackberry. For example:

(StreamConnection)Connector.open(“socket:// testserver:600;interface=wifi”);

Can anyone provide me wit开发者_运维知识库h some information on how to do this?


You try this BlackBerry KnowledgeBase article:
What Is - Different ways to make an HTTP or socket connection


    public static ResponseBean sendRequestAndReceiveResponse(String method, String absoluteURL, String bodyData, boolean readResponseBody) 
    throws IOException
    {
        ResponseBean responseBean = new ResponseBean();
        HttpConnection httpConnection = null;

        try
        {

            String formattedURL = absoluteURL + "deviceside=true;interface=wifi";
            //String formattedURL = absoluteURL + "deviceside=false"; // If you are using BES
            //String formattedURL = absoluteURL + "deviceside=true"; // If you are using TCP

            httpConnection = (HttpConnection) Connector.open(formattedURL);

            httpConnection.setRequestMethod(method);

            if (bodyData != null && bodyData.length() > 0)
            {                               
                OutputStream os = httpConnection.openOutputStream();
                os.write(bodyData.getBytes("UTF-8"));
            }           

            int responseCode = httpConnection.getResponseCode();
            responseBean.setResponseCode(responseCode);

            if (readResponseBody)
            {
                responseBean.setBodyData(readBodyData(httpConnection));
            }
        }
        catch (IOException ex)
        {                       
            System.out.println("!!!!!!!!!!!!!!! IOException in NetworkUtil::sendRequestAndReceiveResponse(): " + ex);
            throw ex;
        }
        catch(Exception ex)
        {                       
            System.out.println("!!!!!!!!!!!!!!! Exception in NetworkUtil::sendRequestAndReceiveResponse(): " + ex);
            throw new IOException(ex.toString());
        }
        finally
        {
            if (httpConnection != null)
                httpConnection.close();
        }

        return responseBean;
    }

    public static StringBuffer readBodyData(HttpConnection httpConnection) throws UnsupportedEncodingException, IOException
    {   
        if(httpConnection == null)
            return null;

        StringBuffer bodyData = new StringBuffer(256);                          
        InputStream inputStream = httpConnection.openDataInputStream();

        byte[] data = new byte[256];
        int len = 0;
        int size = 0;

        while ( -1 != (len = inputStream.read(data)) )
        {
            bodyData.append(new String(data, 0, len,"UTF-8"));
            size += len;
        }

        if (inputStream != null)
        {
            inputStream.close();            
        }

        return bodyData;
    }
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜