⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 httpdriver.java

📁 华为编程开发规范与案例, 华为编程开发规范与案例,华为编程开发规范与案例
💻 JAVA
字号:
// SMSLib for Java v3
// A Java API library for sending and receiving SMS via a GSM modem
// or other supported gateways.
// Web Site: http://www.smslib.org
//
// SMSLib is distributed under the terms of the Apache License version 2.0
//
// Copyright (C) 2002-2007, Thanasis Delenikas, Athens/GREECE
// Portions Copyright:
// Davide Bettoni, Clusone/ITALY, dbettoni@users.sourceforge.net
// Tomek Cejner, Polland, heretique@users.sourceforge.net
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

package org.smslib.gateway;

import java.util.*;
import java.net.*;
import java.io.*;

public class HttpDriver
{
	/**
	 * Performs an HTTP POST request, with the specified header pairs. Returns
	 * the result as a list of strings.
	 * 
	 * @param url
	 *           The URL to call.
	 * @param requestList
	 *           The HTTP header pairs to use.
	 * @return A list of strings
	 * @throws IOException
	 */
	public static LinkedList<String> HttpPost(URL url, LinkedList<HttpHeader> requestList) throws IOException
	{
		LinkedList<String> responseList = new LinkedList<String>();
		URLConnection con;
		BufferedReader in;
		OutputStreamWriter out;
		StringBuffer req;
		String line;

		con = url.openConnection();
		con.setDoInput(true);
		con.setDoOutput(true);
		con.setUseCaches(false);
		con.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
		out = new OutputStreamWriter(con.getOutputStream());
		req = new StringBuffer();
		for (int i = 0; i < requestList.size(); i++)
		{
			if (i != 0) req.append("&");
			req.append(requestList.get(i).key);
			req.append("=");
			req.append(requestList.get(i).value);
		}
		out.write(req.toString());
		out.flush();
		out.close();
		in = new BufferedReader(new InputStreamReader((con.getInputStream())));
		while ((line = in.readLine()) != null)
			responseList.add(line);
		in.close();
		return responseList;
	}

	/**
	 * Perform simple HTTP GET query and return response in List of Strings.
	 * 
	 * @param url
	 *           URL to open
	 * @return LinkedList of Strings containing response
	 * @throws java.io.IOException
	 */
	public static LinkedList<String> HttpGet(URL url) throws IOException
	{
		LinkedList<String> responseList = new LinkedList<String>();
		URLConnection con = url.openConnection();
		con.setAllowUserInteraction(false);

		BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));

		String inputLine;

		while ((inputLine = in.readLine()) != null)
			responseList.add(inputLine);
		in.close();

		return responseList;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -