java.net.HttpURLConnection#setDoInput ( )源码实例Demo

下面列出了java.net.HttpURLConnection#setDoInput ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

private void preAuthenticate() throws IOException {
    URLConnection conn = null;

    // Create a connection for this command
    conn = (new URL(url)).openConnection();
    HttpURLConnection hconn = (HttpURLConnection) conn;

    // Set up standard connection characteristics
    hconn.setAllowUserInteraction(false);
    hconn.setDoInput(true);
    hconn.setUseCaches(false);
    hconn.setDoOutput(false);
    hconn.setRequestMethod("OPTIONS");
    hconn.setRequestProperty("User-Agent", "Catalina-Ant-Task/1.0");

    // Establish the connection with the server
    hconn.connect();

    // Swallow response message
    IOTools.flow(hconn.getInputStream(), null);
}
 
源代码2 项目: wildfly-samples   文件: CordovaResourceApi.java
public String getMimeType(Uri uri) {
    switch (getUriType(uri)) {
        case URI_TYPE_FILE:
        case URI_TYPE_ASSET:
            return getMimeTypeFromPath(uri.getPath());
        case URI_TYPE_CONTENT:
        case URI_TYPE_RESOURCE:
            return contentResolver.getType(uri);
        case URI_TYPE_DATA: {
            return getDataUriMimeType(uri);
        }
        case URI_TYPE_HTTP:
        case URI_TYPE_HTTPS: {
            try {
                HttpURLConnection conn = httpClient.open(new URL(uri.toString()));
                conn.setDoInput(false);
                conn.setRequestMethod("HEAD");
                return conn.getHeaderField("Content-Type");
            } catch (IOException e) {
            }
        }
    }
    
    return null;
}
 
源代码3 项目: AndroidQuick   文件: HTTPRequest.java
private HTTPResponse post() throws IOException {
    URL url = new URL(mPath);
    HttpURLConnection lConnection = (HttpURLConnection) url.openConnection();

    lConnection.setReadTimeout(mReadTimeoutMillis);
    lConnection.setConnectTimeout(mConnectTimeoutMillis);
    lConnection.setRequestMethod("POST");
    lConnection.setDoInput(true);
    lConnection.setDoOutput(true);

    OutputStream lOutStream = lConnection.getOutputStream();
    BufferedWriter lWriter = new BufferedWriter(new OutputStreamWriter(lOutStream, "UTF-8"));
    lWriter.write(getQuery(mParameters));
    lWriter.flush();
    lWriter.close();
    lOutStream.close();

    HTTPResponse response = readPage(lConnection);

    return response;
}
 
源代码4 项目: product-emm   文件: HurlStack.java
/**
 * Opens an {@link HttpURLConnection} with parameters.
 * @param url
 * @return an open connection
 * @throws IOException
 */
private HttpURLConnection openConnection(URL url, Request<?> request) throws IOException {
    HttpURLConnection connection = createConnection(url);

    int timeoutMs = request.getTimeoutMs();
    connection.setConnectTimeout(timeoutMs);
    connection.setReadTimeout(timeoutMs);
    connection.setUseCaches(false);
    connection.setDoInput(true);

    // use caller-provided custom SslSocketFactory, if any, for HTTPS
    if ("https".equals(url.getProtocol()) && mSslSocketFactory != null) {
        ((HttpsURLConnection)connection).setSSLSocketFactory(mSslSocketFactory);
    }

    return connection;
}
 
源代码5 项目: barterli_android   文件: HurlStack.java
/**
 * Opens an {@link HttpURLConnection} with parameters.
 * 
 * @param url
 * @return an open connection
 * @throws IOException
 */
private HttpURLConnection openConnection(URL url, Request<?> request)
                throws IOException {

    HttpURLConnection connection = createConnection(url);

    int timeoutMs = request.getTimeoutMs();
    connection.setConnectTimeout(timeoutMs);
    connection.setReadTimeout(timeoutMs);
    connection.setUseCaches(false);
    connection.setDoInput(true);

    // use caller-provided custom SslSocketFactory, if any, for HTTPS
    if ("https".equals(url.getProtocol()) && mSslSocketFactory != null) {
        ((HttpsURLConnection) connection)
                        .setSSLSocketFactory(mSslSocketFactory);
    }

    return connection;
}
 
源代码6 项目: opencps-v2   文件: MultipartUtility.java
public MultipartUtility(String requestURL, String charset, long groupId, String authStringEnc, String method)
		throws IOException {
	this.charset = charset;

	// creates a unique boundary based on time stamp
	boundary = "===" + System.currentTimeMillis() + "===";

	URL url = new URL(requestURL);
	httpConn = (HttpURLConnection) url.openConnection();
	httpConn.setUseCaches(false);
	httpConn.setDoOutput(true); // indicates POST method
	httpConn.setDoInput(true);
	httpConn.setRequestProperty("Content-Type", "multipart/form-data; boundary=" + boundary);
	httpConn.setRequestProperty("User-Agent", "OpenCPS-Agent");

	httpConn.setRequestProperty("Authorization", "Basic " + authStringEnc);

	httpConn.setRequestMethod(method);
	httpConn.setDoInput(true);
	httpConn.setDoOutput(true);
	httpConn.setRequestProperty("Accept", "application/json");
	httpConn.setRequestProperty("groupId", String.valueOf(groupId));

	outputStream = httpConn.getOutputStream();
	writer = new PrintWriter(new OutputStreamWriter(outputStream, charset), true);
}
 
源代码7 项目: hawkular-alerts   文件: GnocchiQuery.java
private List<Map<String, String>> getMetrics(List<String> gnocchiNames) {
    String metricsUrl = baseUrl + "/v1/metric";
    List<Map<String, String>> rawMetrics = new ArrayList<>();
    if (isEmpty(gnocchiNames)) {
        return rawMetrics;
    }
    for (String metricName : gnocchiNames) {
        String metricUrl = metricsUrl + "?name=" + metricName;
        try {
            URL url = new URL(metricUrl);
            HttpURLConnection conn = (HttpURLConnection) url.openConnection();
            conn.setRequestProperty(AUTHORIZATION, basicAuth);
            conn.setRequestMethod(GET);
            conn.setDoInput(true);
            List rawMetric = JsonUtil.getMapper().readValue(conn.getInputStream(), List.class);
            conn.disconnect();
            log.debugf("Gnocchi Metrics found %s", rawMetric);
            rawMetrics.addAll(rawMetric);
        } catch (IOException e) {
            log.errorf(e,"Error querying Gnocchi metrics %s", metricUrl);
        }
    }
    return rawMetrics;
}
 
源代码8 项目: VideoOS-Android-SDK   文件: SyncCall.java
private HttpURLConnection openConnection(URL url, Request request) throws IOException {
    HttpURLConnection connection = createConnection(url);

    connection.setConnectTimeout(mHttpHelper.mConnectTimeOut);
    connection.setReadTimeout(mHttpHelper.mReadTimeOut);
    connection.setUseCaches(false);
    connection.setDoInput(true);

    if ("https".equals(url.getProtocol()) && mHttpHelper.mSslSocketFactory != null) {
        ((HttpsURLConnection) connection).setSSLSocketFactory(mHttpHelper.mSslSocketFactory);
    }

    return connection;
}
 
源代码9 项目: taiga-android   文件: AuthEndpoint.java
@Override
protected AuthResponse doInBackground(String... params) {
    try {
        URL url = new URL(taigaUrl + "/api/v1/auth");

        HttpURLConnection conn = (HttpURLConnection) url.openConnection();
        conn.setReadTimeout(15000);
        conn.setConnectTimeout(15000);
        conn.setRequestMethod("POST");
        conn.setDoInput(true);
        conn.setDoOutput(true);

        String postData = String.format("type=normal&username=%s&password=%s",
                URLEncoder.encode(username, "UTF-8"), URLEncoder.encode(password, "UTF-8"));

        try (OutputStream os = conn.getOutputStream();
             OutputStreamWriter out = new OutputStreamWriter(os, "UTF-8");
             BufferedWriter writer = new BufferedWriter(out)) {
            writer.write(postData);
            writer.flush();
        }
        int responseCode = conn.getResponseCode();

        Log.w(TAG, "Login response code: " + responseCode);
        if (responseCode == HttpsURLConnection.HTTP_OK) {
            String jsonResponse = IOUtils.toString(conn.getInputStream());
            Log.d(TAG, "Login response: " + jsonResponse);

            return new GsonBuilder().create().fromJson(jsonResponse, AuthResponse.class);
        }
        throw new IllegalStateException(String.valueOf(responseCode));
    } catch (Exception e) {
        Log.e(TAG, "Error requesting login", e);
        return null;
    }
}
 
源代码10 项目: pnc   文件: OpenshiftStartedEnvironment.java
private boolean connectToPingUrl(URL url) throws IOException {
    HttpURLConnection connection = (HttpURLConnection) url.openConnection();
    connection.setConnectTimeout(500);
    connection.setRequestMethod("GET");
    connection.setDoOutput(true);
    connection.setDoInput(true);
    connection.connect();

    int responseCode = connection.getResponseCode();
    connection.disconnect();

    logger.debug("Got {} from {}.", responseCode, url);
    return responseCode == 200;
}
 
源代码11 项目: myapplication   文件: HttpUtil.java
public static String getSearchJsonStr(String keywordStr) throws UnsupportedEncodingException {
//        String requestUrl = "http://gank.io/api/search/query/listview/category/"
//                + URLEncoder.encode(gankClassStr, "utf-8") + "/count/30/page/1 ";
        String requestUrl = "http://gank.io/api/search/query/"
                + URLEncoder.encode(keywordStr, "utf-8") + "/category/all/count/50/page/1";
        StringBuffer buffer = null;
        try {
            // 建立连接
            URL url = new URL(requestUrl);
            HttpURLConnection httpUrlConn = (HttpURLConnection) url.openConnection();
            httpUrlConn.setDoInput(true);
            httpUrlConn.setRequestMethod("GET");
            // 获取输入流
            InputStream inputStream = httpUrlConn.getInputStream();
            InputStreamReader inputStreamReader = new InputStreamReader(inputStream, "utf-8");
            BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
            // 读取返回结果
            buffer = new StringBuffer();
            String str = null;
            while ((str = bufferedReader.readLine()) != null) {
                buffer.append(str);
            }

            // 释放资源
            bufferedReader.close();
            inputStreamReader.close();
            inputStream.close();
            httpUrlConn.disconnect();
        } catch (Exception e) {
            e.printStackTrace();
        }

        if (buffer != null) {
            return buffer.toString();  //返回获取的json字符串
        } else {
            return "";
        }
    }
 
源代码12 项目: Modern-LWC   文件: UUIDFetcher.java
private static HttpURLConnection createConnection() throws Exception {
    URL url = new URL(PROFILE_URL);
    HttpURLConnection connection = (HttpURLConnection) url.openConnection();
    connection.setRequestMethod("POST");
    connection.setRequestProperty("Content-Type", "application/json");
    connection.setUseCaches(false);
    connection.setDoInput(true);
    connection.setDoOutput(true);
    return connection;
}
 
源代码13 项目: wlmedia   文件: HttpUtil.java
private HttpURLConnection getHttpURLConnection(String uri, String referer, String method) throws IOException {

        URL url = new URL(uri);
        HttpURLConnection httpConn = (HttpURLConnection) url.openConnection();
        httpConn.setRequestProperty("Content-Type","application/x-www-form-urlencoded;charset=UTF-8");
        httpConn.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11");
        if(referer != null && "".equals(referer))
        {
            httpConn.setRequestProperty("Referer", referer);
        }
        httpConn.setRequestMethod(method);
        httpConn.setDoInput(true);
        return httpConn;
    }
 
源代码14 项目: karyon   文件: JerseyBlockingTest.java
private static int postData( String path, String payload ) throws IOException {
  URL url = new URL( path );

  HttpURLConnection con = (HttpURLConnection)url.openConnection();
  con.setRequestMethod("POST");
  
  con.setRequestProperty("Content-Type","application/json");

  con.setDoOutput(true); 
  con.setDoInput(true); 
  con.setConnectTimeout( 10000 );
  con.setReadTimeout( 20000 );
  
  con.getOutputStream().write( payload.getBytes("UTF-8") );
  con.getOutputStream().flush();
  con.getOutputStream().close();
  
  int status = con.getResponseCode();
  
  if( status != 200 ) {
    return status;
  }
  
  //read the response
  byte[] buffer = new byte[ 1024 ];
  while( con.getInputStream().read( buffer ) > 0 ) {
      ;
  }
  
  return 200;
}
 
源代码15 项目: cloud-espm-v2   文件: RequestExecutionHelper.java
/**
 * Run a http post request
 * 
 * @param entityName
 * @param body
 * @return http response
 * @throws MalformedURLException
 * @throws IOException
 * @throws ProtocolException
 */
public static HttpResponse executePostRequest(String entityName, String body)
		throws MalformedURLException, IOException, ProtocolException {
	URL url = new URL(SERVICE_ROOT_URI + entityName);
	HttpURLConnection connection = (HttpURLConnection) url.openConnection();
	try {
		connection.setRequestMethod("POST");
		connection.setDoInput(true);
		connection.setDoOutput(true);
		connection.setUseCaches(false);
		connection.setRequestProperty("Accept",
				"application/atom+xml");
		connection.setRequestProperty("Content-Type",
				"application/atom+xml");
		DataOutputStream outStream = new DataOutputStream(
				connection.getOutputStream());
		try {
			outStream.writeBytes(body);
			outStream.close();
			return new HttpResponse(connection);
		} finally {
			outStream.close();
		}
	} finally {
		connection.disconnect();
	}
}
 
源代码16 项目: weex   文件: DefaultWXHttpAdapter.java
/**
 * Opens an {@link HttpURLConnection} with parameters.
 *
 * @param request
 * @param listener
 * @return an open connection
 * @throws IOException
 */
private HttpURLConnection openConnection(WXRequest request, OnHttpListener listener) throws IOException {
  URL url = new URL(request.url);
  HttpURLConnection connection = createConnection(url);
  connection.setConnectTimeout(request.timeoutMs);
  connection.setReadTimeout(request.timeoutMs);
  connection.setUseCaches(false);
  connection.setDoInput(true);

  if (request.paramMap != null) {
    Set<String> keySets = request.paramMap.keySet();
    for (String key : keySets) {
      connection.addRequestProperty(key, request.paramMap.get(key));
    }
  }

  if ("POST".equals(request.method)) {
    connection.setRequestMethod("POST");
    if (request.body != null) {
      if (listener != null) {
        listener.onHttpUploadProgress(0);
      }
      connection.setDoOutput(true);
      DataOutputStream out = new DataOutputStream(connection.getOutputStream());
      //TODO big stream will cause OOM; Progress callback is meaningless
      out.write(request.body.getBytes());
      out.close();
      if (listener != null) {
        listener.onHttpUploadProgress(100);
      }
    }
  } else if (!TextUtils.isEmpty(request.method)) {
    connection.setRequestMethod(request.method);
  } else {
    connection.setRequestMethod("GET");
  }

  return connection;
}
 
源代码17 项目: sakai   文件: SiteMembershipsSynchroniserImpl.java
private final void synchronizeLTI1SiteMemberships(final Site site, final String membershipsId, final String membershipsUrl, final String oauth_consumer_key, boolean isEmailTrustedConsumer) {

        // Lookup the secret
        final String configPrefix = "basiclti.provider." + oauth_consumer_key + ".";
        final String oauth_secret = serverConfigurationService.getString(configPrefix+ "secret", null);
        if (oauth_secret == null) {
            log.error("launch.key.notfound {}. This site's memberships will NOT be synchronised.", oauth_consumer_key);
            return;
        }

        OAuthMessage om = new OAuthMessage("POST", membershipsUrl, null);
        om.addParameter(OAuth.OAUTH_CONSUMER_KEY, oauth_consumer_key);
        om.addParameter(OAuth.OAUTH_SIGNATURE_METHOD, OAuth.HMAC_SHA1);
        om.addParameter(OAuth.OAUTH_VERSION, "1.0");
        om.addParameter(OAuth.OAUTH_TIMESTAMP, new Long((new Date().getTime()) / 1000).toString());
        om.addParameter(OAuth.OAUTH_NONCE, UUID.randomUUID().toString());
        om.addParameter(BasicLTIConstants.LTI_MESSAGE_TYPE, "basic-lis-readmembershipsforcontext");
        om.addParameter(BasicLTIConstants.LTI_VERSION, "LTI-1p0");
        om.addParameter("id", membershipsId);

        OAuthConsumer oc = new OAuthConsumer(null, oauth_consumer_key, oauth_secret, null);

        try {
            OAuthSignatureMethod osm = OAuthSignatureMethod.newMethod(OAuth.HMAC_SHA1, new OAuthAccessor(oc));
            osm.sign(om);

            URL url = new URL(membershipsUrl);
            HttpURLConnection connection = (HttpURLConnection) url.openConnection();
            connection.setDoOutput(true);
            connection.setDoInput(true);
            connection.setInstanceFollowRedirects(false); 
            connection.setRequestMethod("POST");
            connection.setUseCaches (false);
            BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(connection.getOutputStream()));
            bw.write(OAuth.formEncode(om.getParameters()));
            bw.flush();
            bw.close();

            processMembershipsResponse(connection, site, oauth_consumer_key, isEmailTrustedConsumer);
        } catch (Exception e) {
            log.warn("Problem synchronizing LTI1 memberships.", e);
        }
    }
 
/**
 * <b>CREATE</b>
 *
 * curl -i -X PUT "http://<HOST>:<PORT>/webhdfs/v1/<PATH>?op=CREATE
 * [&overwrite=<true|false>][&blocksize=<LONG>][&replication=<SHORT>]
 * [&permission=<OCTAL>][&buffersize=<INT>]"
 *
 * @param path
 * @param is
 * @return
 * @throws MalformedURLException
 * @throws IOException
 * @throws AuthenticationException
 */
public String createPOC(String path, InputStream is, HashMap<String, String> map)
        throws MalformedURLException, IOException, AuthenticationException {
    String resp = null;
    ensureValidToken();

    String redirectUrl = null;
    HttpURLConnection conn = authenticatedURL
            .openConnection(
                    new URL(new URL(httpfsUrl), MessageFormat.format(
                            "/webhdfs/v1/{0}?op=CREATE",
                            URLUtil.encodePath(path))), token);
    conn.setRequestMethod("PUT");
    conn.setInstanceFollowRedirects(false);
    conn.connect();
    logger.info("Location:" + conn.getHeaderField("Location"));
    System.out.println("Location:" + conn.getHeaderField("Location"));
    resp = result(conn, true);
    if (conn.getResponseCode() == 307){
        String str = conn.getHeaderField("Location");
        if(str.startsWith("http://big1.big")){
            redirectUrl = str.replaceAll("big1.big", map.get("big1.big"));
        }else if(str.startsWith("http://big2.big")){
            redirectUrl = str.replaceAll("big2.big", map.get("big2.big"));
        }else if(str.startsWith("http://big3.big")){
            redirectUrl = str.replaceAll("big3.big", map.get("big3.big"));
        }else{
            redirectUrl = conn.getHeaderField("Location");
        }
    }
    conn.disconnect();

    if (redirectUrl != null) {
        conn = authenticatedURL.openConnection(new URL(redirectUrl), token);
        conn.setRequestMethod("PUT");
        conn.setDoOutput(true);
        conn.setDoInput(true);
        conn.setUseCaches(false);
        conn.setRequestProperty("Content-Type", "application/octet-stream");
        // conn.setRequestProperty("Transfer-Encoding", "chunked");
        final int _SIZE = is.available();
        conn.setRequestProperty("Content-Length", "" + _SIZE);
        conn.setFixedLengthStreamingMode(_SIZE);
        conn.connect();
        OutputStream os = conn.getOutputStream();
        copy(is, os);
        // Util.copyStream(is, os);
        is.close();
        os.close();
        resp = result(conn, false);
        conn.disconnect();
    }

    return resp;
}
 
源代码19 项目: database-transform-tool   文件: HttpUtil.java
/**
 * @param url 请求URL
 * @param method 请求URL
 * @param param	json参数(post|put)
 * @return
 */
public static String urlRequest(String url,String method,String param,String auth){
	String result = null;
	try {
		HttpURLConnection connection = (HttpURLConnection)new URL(url).openConnection();
		connection.setConnectTimeout(60*1000);
		connection.setRequestMethod(method.toUpperCase());
		if(auth!=null&&!"".equals(auth)){
			String authorization = "Basic "+new String(Base64.encodeBase64(auth.getBytes()));
			connection.setRequestProperty("Authorization", authorization);
		}
		if(param!=null&&!"".equals(param)){
			connection.setDoInput(true);
			connection.setDoOutput(true);
			connection.connect();
			DataOutputStream dos = new DataOutputStream(connection.getOutputStream());
			dos.write(param.getBytes(Consts.UTF_8));
			dos.flush();
			dos.close();
		}else{
			connection.connect();
		}
		if(connection.getResponseCode()==HttpURLConnection.HTTP_OK){
			InputStream in = connection.getInputStream();
			ByteArrayOutputStream out = new ByteArrayOutputStream();
			byte[] buff = new byte[1024];
			int len = 0;
			while((len=in.read(buff, 0, buff.length))>0){
				out.write(buff, 0, len);
			}
			byte[] data = out.toByteArray();
			in.close();
			result = data!=null&&data.length>0?new String(data, Consts.UTF_8):null;
		}else{
			result = "{\"status\":"+connection.getResponseCode()+",\"msg\":\""+connection.getResponseMessage()+"\"}";
		}
		connection.disconnect();
	}catch (Exception e) {
		logger.error("--http request error !",e);
	}
	return result;
}
 
源代码20 项目: pnc   文件: DefaultFileTranser.java
@Override
public StringBuffer downloadFileToStringBuilder(StringBuffer logsAggregate, URI uri) throws TransferException {
    try {
        logger.debug("Downloading file to String Buffer from {}", uri);

        ArrayDeque<String> logLines = new ArrayDeque<>();

        HttpURLConnection connection = (HttpURLConnection) uri.toURL().openConnection();
        connection.setRequestMethod("GET");

        connection.setDoOutput(true);
        connection.setDoInput(true);

        connection.setConnectTimeout(connectTimeout);
        connection.setReadTimeout(readTimeout);

        Consumer<String> removedLines = (removedLine) -> {
            fullyDownloaded = false;
            logger.debug("Dropped log line from URI {}: {}.", uri, removedLine);
        };

        try (InputStream inputStream = connection.getInputStream()) {
            Charset charset = Charset.forName(ENCODING);
            StringUtils.readStream(inputStream, charset, logLines, maxDownloadSize, removedLines);
        }

        logsAggregate.append("==== ").append(uri.toString()).append(" ====\n");
        while (true) {
            String line = logLines.pollFirst();
            if (line == null) {
                break;
            }
            logsAggregate.append(line + "\n");
        }
        if (logLines.size() > 0) {
            logger.warn("Log buffer was not fully drained for URI: {}", uri);
        }
        if (logger.isTraceEnabled()) {
            logger.trace("Downloaded log: {}.", logsAggregate);
        }
        return logsAggregate;
    } catch (IOException e) {
        throw new TransferException("Could not obtain log file: " + uri.toString(), e);
    }
}