Открытое соединение HTTP - PullRequest
       7

Открытое соединение HTTP

3 голосов
/ 21 февраля 2011

Мне нужно открыть HTTP-соединение через службу беспроводного интернета на Blackberry. Например:

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

Может ли кто-нибудь предоставить мне некоторую информацию о том, как это сделать?

Ответы [ 2 ]

2 голосов
/ 23 февраля 2011

Вы попробуйте эту статью базы знаний BlackBerry:
Что такое - Различные способы установить соединение HTTP или сокет

0 голосов
/ 24 февраля 2011
    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;
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...