ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

java发送application/json格式的post请求,需要登陆

2019-10-21 18:00:54  阅读:243  来源: 互联网

标签:pcauto java E5% 22% 3A% application json 2C% com


package util;

import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.List;
import java.io.BufferedReader;
import java.io.InputStreamReader;

public class JavaPostJson2 {
    final static String url = "http://t-jzz.pcauto.com.cn:9001/admin/content/add.do";
    
    
    /**
     * 发送HttpPost请求
     * 
     * @param strURL
     *            服务地址
     * @param params
     *            json字符串,例如: "{ \"id\":\"12345\" }" ;其中属性名必须带双引号<br/>
     * @return 成功:返回json字符串<br/>
     */
    public static String post(String strURL, String params) {
        BufferedReader reader = null;
        try {
            URL url = new URL(strURL);// 创建连接
            HttpURLConnection connection = (HttpURLConnection) url.openConnection();
            connection.setDoOutput(true);
            connection.setDoInput(true);
            connection.setUseCaches(false);
            connection.setInstanceFollowRedirects(true);
            connection.setRequestMethod("POST"); // 设置请求方式
            // connection.setRequestProperty("Accept", "application/json"); // 设置接收数据的格式
、      //因为要登陆才可以执行请求,所以这里要带cookie的header connection.setRequestProperty("Cookie", "geli-session=41b6d86db1e97df5:-60813064:16d0571e3e8:-3a58377431669b192d08; c=58ydwry; u=58zqg8z; pcsuv=1482230765738.a.46958170; u4ad=4031lfgby; UM_distinctid=16be539fa796b9-099f04a8a5445d-4144032b-1fa400-16be539fa7a7d3; visitedfid=22035D16260D14152; gr_user_id=b2a6251c-dddb-4502-91f9-0b6f10ccb260; favCar=%E5%A5%A5%E8%BF%AAA3_9550%7C%E5%A5%A5%E8%BF%AAA8L_7%7C%E7%A6%8F%E5%85%8B%E6%96%AFActive_25101%7C%E8%BD%A9%E9%80%B8_3996%7C%E5%88%9B%E7%95%8C_24483; locationWap=%7B%22expires%22%3A1568884707863%2C%22city%22%3A%22%E5%93%88%E5%B0%94%E6%BB%A8%E5%B8%82%22%2C%22cityUser%22%3A%22%E5%93%88%E5%B0%94%E6%BB%A8%E5%B8%82%22%2C%22cityCode%22%3A%22230100%22%2C%22proCode%22%3A%22230000%22%2C%22cityCodeUser%22%3A%22230100%22%2C%22proCodeUser%22%3A%22230000%22%7D; AplocationWap=%7B%22regionId%22%3A187%2C%20%22regionName%22%3A%22%E5%93%88%E5%B0%94%E6%BB%A8%22%7D; pcLocate=%7B%22proCode%22%3A%22440000%22%2C%22pro%22%3A%22%E5%B9%BF%E4%B8%9C%E7%9C%81%22%2C%22cityCode%22%3A%22441900%22%2C%22city%22%3A%22%E4%B8%9C%E8%8E%9E%E5%B8%82%22%2C%22dataType%22%3A%22user%22%2C%22expires%22%3A1571888929008%7D; pcautoLocate=%7B%22proId%22%3A5%2C%22cityId%22%3A6%2C%22url%22%3A%22%2F%2Fwww.pcauto.com.cn%2Fqcbj%2Fdg%2F%22%2C%22dataTypeAuto%22%3A%22user%22%7D; PClocation=6; pcuvdata=lastAccessTime=1570869719999|visits=289; channel=9396"); connection.setRequestProperty("Content-Type", "application/json"); // 设置发送数据的格式 connection.connect(); //一定要用BufferedReader 来接收响应, 使用字节来接收响应的方法是接收不到内容的 OutputStreamWriter out = new OutputStreamWriter(connection.getOutputStream(), "UTF-8"); // utf-8编码 out.append(params); out.flush(); out.close(); // 读取响应 reader = new BufferedReader(new InputStreamReader(connection.getInputStream(), "UTF-8")); String line; String res = ""; while ((line = reader.readLine()) != null) { res += line; } reader.close(); return res; } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return "error"; // 自定义错误信息 } public static void getparame() { String data1 = "{\"type\":1,\"aiAdId\":\""; String data3= "\",\"contents\":[{\"content_id\":\"18399180\",\"title\":\"CS55钜惠5000元 欢迎到店试乘试驾!\",\"pub_date\":\"2019-10-21 12:00:00 \",\"pub_url\":\"http://www.pcauto.com.cn/qcbj/1839/18399180.html\",\"channel_id\":\"000000185 / 000084302 / 000084320 / \",\"guide_pic\":\"https://img0.pcauto.com.cn/pcauto/1904/01/g_15446002_1554101963823.jpg\"},{\"content_id\":\"18399239\",\"title\":\"全系CS35Plus热销中 可到店品鉴!\",\"pub_date\":\"2019-10-21 12:00:00 \",\"pub_url\":\"http://www.pcauto.com.cn/qcbj/1839/18399239.html\",\"channel_id\":\"000000185 / 000084302 / 000084320 / \",\"guide_pic\":\"https://img0.pcauto.com.cn/pcauto/1905/09/g_15965356_1557385235655.jpg\"},{\"content_id\":\"18399181\",\"title\":\"逸动现优惠高达0.8万 欢迎到店品鉴!\",\"pub_date\":\"2019-10-21 12:00:00 \",\"pub_url\":\"http://www.pcauto.com.cn/qcbj/1839/18399181.html\",\"channel_id\":\"000000185 / 000084302 / 000084320 / \",\"guide_pic\":\"https://img0.pcauto.com.cn/pcauto/1905/09/g_15965315_1557385082630.jpg\"}]}\r\n" ; Tools tools=new Tools(); List<String> listall = tools.readFile02("E:\\项目\\2019年\\10月\\ad\\aid.txt"); for (String str : listall) { String params=data1+str+data3; System.out.println(params); String reString=post(url,params); System.out.println(reString); } // String pa="{\"type\":1,\"aiAdId\":\"1067\",\"contents\":[{\"content_id\":\"18399180\",\"title\":\"CS55钜惠5000元 欢迎到店试乘试驾!\",\"pub_date\":\"2019-10-21 12:00:00 \",\"pub_url\":\"http://www.pcauto.com.cn/qcbj/1839/18399180.html\",\"channel_id\":\"000000185 / 000084302 / 000084320 / \",\"guide_pic\":\"https://img0.pcauto.com.cn/pcauto/1904/01/g_15446002_1554101963823.jpg\"},{\"content_id\":\"18399239\",\"title\":\"全系CS35Plus热销中 可到店品鉴!\",\"pub_date\":\"2019-10-21 12:00:00 \",\"pub_url\":\"http://www.pcauto.com.cn/qcbj/1839/18399239.html\",\"channel_id\":\"000000185 / 000084302 / 000084320 / \",\"guide_pic\":\"https://img0.pcauto.com.cn/pcauto/1905/09/g_15965356_1557385235655.jpg\"},{\"content_id\":\"18399181\",\"title\":\"逸动现优惠高达0.8万 欢迎到店品鉴!\",\"pub_date\":\"2019-10-21 12:00:00 \",\"pub_url\":\"http://www.pcauto.com.cn/qcbj/1839/18399181.html\",\"channel_id\":\"000000185 / 000084302 / 000084320 / \",\"guide_pic\":\"https://img0.pcauto.com.cn/pcauto/1905/09/g_15965315_1557385082630.jpg\"}]}\r\n" + // ""; // post(url, pa); //System.out.println(strURL); //System.out.println(params); } public static void main(String[] args) { getparame(); } }

  

标签:pcauto,java,E5%,22%,3A%,application,json,2C%,com
来源: https://www.cnblogs.com/sincoolvip/p/11715021.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有