栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java实现get请求参数串转post请求(json字符串)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java实现get请求参数串转post请求(json字符串)

前一阶段,由于系统接口变更(由原get请求变更为post请求),导致对应接口的参数化数据需要进行处理。

注:post请求中,参数化数据需要使用json串。

如下图:

原get请求参数化信息:

S_CV_EDU_LEVEL=4&S_CURRENT_CAREER_STATUS=2&CompanyId=121111111&S_CV_JOB_LEVEL_ALL=16000100040000%3B16000100070000%3B16000100080000&ip=xx.xx.xx.xx&start=80&sort=complex_v17&rows=20&S_DISCLOSURE_LEVEL=2&S_EXCLUSIVE_COMPANY=%E6%B2%B3%E5%8C%97%E4%BA%92%E5%8A%A8%E5%BD%B1%E8%A7%86%E4%BC%A0%E5%AA%92%E6%9C%89%E9%99%90%E5%85%AC%E5%8F%B8%3B%E6%B2%B3%E5%8C%97%E4%BA%92%E5%8A%A8%E5%BD%B1%E8%A7%86%E4%BC%A0%E5%AA%92%E6%9C%89%E9%99%90%E5%85%AC%E5%8F%B8&S_CV_ACTIVE_TIME_LAST=1625209200%2C1632985200&S_WORK_YEARS=192210%2C202009&UserId=211111111&client=ihrsearch&DepartmentId=211111111&S_DESIRED_CITY=111

现post请求参数化信息:

{
    "parameter": {
        "S_CV_EDU_LEVEL": "4",
        "S_CURRENT_CAREER_STATUS": "2",
        "CompanyId": "121111111",
        "S_CV_JOB_LEVEL_ALL": "16000100040000%3B16000100070000%3B16000100080000",
        "ip": "xx.xx.xx.xx",
        "start": 80,
        "sort": "complex_v17",
        "rows": 20,
        "S_DISCLOSURE_LEVEL": "2",
        "S_EXCLUSIVE_COMPANY": "%E6%B2%B3%E5%8C%97%E4%BA%92%E5%8A%A8%E5%BD%B1%E8%A7%86%E4%BC%A0%E5%AA%92%E6%9C%89%E9%99%90%E5%85%AC%E5%8F%B8%3B%E6%B2%B3%E5%8C%97%E4%BA%92%E5%8A%A8%E5%BD%B1%E8%A7%86%E4%BC%A0%E5%AA%92%E6%9C%89%E9%99%90%E5%85%AC%E5%8F%B8",
        "S_CV_ACTIVE_TIME_LAST": "1625209200%2C1632985200",
        "S_WORK_YEARS": "192210%2C202009",
        "UserId": "211111111",
        "client": "ihrsearch",
        "DepartmentId": "211111111",
        "S_DESIRED_CITY": "111"
    }
}

 具体转换代码(Java版)

import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.io.*;


public class GetConvertPost {

    Logger logger = LoggerFactory.getLogger(ExtractData.class);

    
    public String getConvertPost(String url){
        StringBuffer sb = new StringBuffer();
        String jsonStart = "{"parameter":{";//json字符串头
        String jsonEnd = "}}";//json字符串尾
        String args [] = url.split("&");//按分割
        sb.append(jsonStart);
        for(String arg:args){
            if(arg.indexOf("=")!=-1){
                //对start及rows字段值特殊处理
                if(arg.indexOf("start")!=-1 ||arg.indexOf("rows")!=-1){
                    String s1 ="""+arg.substring(0,arg.indexOf("="))+"":";
                    String s2 = arg.substring(arg.indexOf("=")+1)+",";
                    sb.append(s1).append(s2);
                }else {//常规处理
                    String s3 ="""+arg.substring(0,arg.indexOf("="))+"":";
                    String s4 = """+arg.substring(arg.indexOf("=")+1)+"",";
                    sb.append(s3).append(s4);
                }
            }
        }
        int strlength = sb.length();
        sb.delete(strlength-1,strlength);//删除最后一位(逗号)
        sb.append(jsonEnd);
        return sb.toString();
    }

    public static void main(String [] args){
        GetConvertPost getConvertPost = new GetConvertPost();
        String str ="S_CV_EDU_LEVEL=4&S_CURRENT_CAREER_STATUS=2&CompanyId=121111111&S_CV_JOB_LEVEL_ALL=16000100040000%3B16000100070000%3B16000100080000&ip=xx.xx.xx.xx&start=80&sort=complex_v17&rows=20&S_DISCLOSURE_LEVEL=2&S_EXCLUSIVE_COMPANY=%E6%B2%B3%E5%8C%97%E4%BA%92%E5%8A%A8%E5%BD%B1%E8%A7%86%E4%BC%A0%E5%AA%92%E6%9C%89%E9%99%90%E5%85%AC%E5%8F%B8%3B%E6%B2%B3%E5%8C%97%E4%BA%92%E5%8A%A8%E5%BD%B1%E8%A7%86%E4%BC%A0%E5%AA%92%E6%9C%89%E9%99%90%E5%85%AC%E5%8F%B8&S_CV_ACTIVE_TIME_LAST=1625209200%2C1632985200&S_WORK_YEARS=192210%2C202009&UserId=211111111&client=ihrsearch&DepartmentId=211111111&S_DESIRED_CITY=111";
        String result = getConvertPost.getConvertPost(str);

    }
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/282006.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号