金山WPS在线编辑
This commit is contained in:
@ -1,6 +1,7 @@
|
|||||||
package com.chinaunicom.mall.ebtp.extend.wps.controller;
|
package com.chinaunicom.mall.ebtp.extend.wps.controller;
|
||||||
|
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.chinaunicom.mall.ebtp.cloud.security.starter.entity.SecurityEntity;
|
import com.chinaunicom.mall.ebtp.cloud.security.starter.entity.SecurityEntity;
|
||||||
import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse;
|
import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse;
|
||||||
import com.chinaunicom.mall.ebtp.common.log.OperationLogDetail;
|
import com.chinaunicom.mall.ebtp.common.log.OperationLogDetail;
|
||||||
@ -9,6 +10,7 @@ import com.chinaunicom.mall.ebtp.common.log.enums.EbtpLogType;
|
|||||||
import com.chinaunicom.mall.ebtp.extend.feign.client.UnicomOAuthClient;
|
import com.chinaunicom.mall.ebtp.extend.feign.client.UnicomOAuthClient;
|
||||||
import com.chinaunicom.mall.ebtp.extend.wps.entity.KingSoftFileSaveVo;
|
import com.chinaunicom.mall.ebtp.extend.wps.entity.KingSoftFileSaveVo;
|
||||||
import com.chinaunicom.mall.ebtp.extend.wps.service.WpsService;
|
import com.chinaunicom.mall.ebtp.extend.wps.service.WpsService;
|
||||||
|
import com.chinaunicom.mall.ebtp.extend.wps.util.HttpsUtils;
|
||||||
import com.chinaunicom.mall.ebtp.extend.wps.vo.WpsClientInVo;
|
import com.chinaunicom.mall.ebtp.extend.wps.vo.WpsClientInVo;
|
||||||
import com.chinaunicom.mall.ebtp.extend.wps.vo.WpsResultVo;
|
import com.chinaunicom.mall.ebtp.extend.wps.vo.WpsResultVo;
|
||||||
import feign.Body;
|
import feign.Body;
|
||||||
@ -17,6 +19,7 @@ import io.swagger.annotations.ApiOperation;
|
|||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.lang3.StringEscapeUtils;
|
import org.apache.commons.lang3.StringEscapeUtils;
|
||||||
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.web.context.request.RequestContextHolder;
|
import org.springframework.web.context.request.RequestContextHolder;
|
||||||
import org.springframework.web.context.request.ServletRequestAttributes;
|
import org.springframework.web.context.request.ServletRequestAttributes;
|
||||||
@ -25,6 +28,7 @@ import javax.annotation.Resource;
|
|||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.PrintWriter;
|
import java.io.PrintWriter;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@RestController
|
@RestController
|
||||||
@ -39,6 +43,8 @@ public class WpsController {
|
|||||||
@Resource
|
@Resource
|
||||||
private UnicomOAuthClient unicomOAuthClient;
|
private UnicomOAuthClient unicomOAuthClient;
|
||||||
|
|
||||||
|
@Value("${KingSoftWps.kswpsurl}")
|
||||||
|
private String kswpsurl;
|
||||||
/**
|
/**
|
||||||
* 获得编辑或查看链接
|
* 获得编辑或查看链接
|
||||||
*
|
*
|
||||||
@ -142,4 +148,18 @@ public class WpsController {
|
|||||||
log.info("SecurityEntity:"+s);
|
log.info("SecurityEntity:"+s);
|
||||||
return BaseResponse.success(s);
|
return BaseResponse.success(s);
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* token UrlPostString
|
||||||
|
* 编辑 permission=write
|
||||||
|
* 预览 permission=read
|
||||||
|
* @param
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@ApiOperation("token")
|
||||||
|
@PostMapping("/kingSoft/UrlPostString")
|
||||||
|
public BaseResponse UrlPostString(@RequestBody Object obj) {
|
||||||
|
String retJson = HttpsUtils.UrlPostString(kswpsurl, "utf-8", JSON.toJSONString(obj));//httpPost(kswpsurl,json);
|
||||||
|
log.info("retJson:"+retJson);
|
||||||
|
return BaseResponse.success(retJson);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -31,16 +31,18 @@ public class HttpsUtils {
|
|||||||
sc.init(null, new TrustManager[]{new TrustAnyTrustManager()}, new java.security.SecureRandom());
|
sc.init(null, new TrustManager[]{new TrustAnyTrustManager()}, new java.security.SecureRandom());
|
||||||
URL console = new URL(url);
|
URL console = new URL(url);
|
||||||
|
|
||||||
// StringBuffer postData = new StringBuffer();
|
StringBuffer postData = new StringBuffer();
|
||||||
//
|
|
||||||
// Iterator it = map.entrySet().iterator();
|
Iterator it = map.entrySet().iterator();
|
||||||
// while (it.hasNext()) {
|
postData.append("{");
|
||||||
// Map.Entry pairs = (Map.Entry) it.next();
|
while (it.hasNext()) {
|
||||||
// postData.append(pairs.getKey()).append("=")
|
Map.Entry pairs = (Map.Entry) it.next();
|
||||||
// .append(URLEncoder.encode(pairs != null && pairs.getValue() != null ? pairs.getValue().toString() : "", charSet)).append("&");
|
postData.append("\""+pairs.getKey()+"\"").append("=")
|
||||||
// }
|
.append(URLEncoder.encode(pairs != null && pairs.getValue() != null ? "\""+pairs.getValue().toString()+"\"" : "", charSet));
|
||||||
// System.out.println("请求参数:" + postData);
|
}
|
||||||
System.out.println("请求参数:" + map);
|
postData.append("}");
|
||||||
|
System.out.println("请求参数:" + postData);
|
||||||
|
//System.out.println("请求参数:" + map);
|
||||||
HttpsURLConnection conn = null;
|
HttpsURLConnection conn = null;
|
||||||
if (proxy != null) {
|
if (proxy != null) {
|
||||||
System.out.println("proxy信息=======:" + proxy);
|
System.out.println("proxy信息=======:" + proxy);
|
||||||
@ -60,7 +62,7 @@ public class HttpsUtils {
|
|||||||
|
|
||||||
PrintWriter out = new PrintWriter(conn.getOutputStream());//获取URLConnection对象对应的输出流
|
PrintWriter out = new PrintWriter(conn.getOutputStream());//获取URLConnection对象对应的输出流
|
||||||
|
|
||||||
out.print(map);//发送请求参数即数据
|
out.print(postData);//发送请求参数即数据
|
||||||
|
|
||||||
out.flush();//缓冲数据
|
out.flush();//缓冲数据
|
||||||
|
|
||||||
@ -148,6 +150,58 @@ public class HttpsUtils {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static String UrlPostString(String url,String charSet, String value){
|
||||||
|
String str = "";
|
||||||
|
try {
|
||||||
|
SSLContext sc = SSLContext.getInstance("SSL");
|
||||||
|
sc.init(null, new TrustManager[]{new TrustAnyTrustManager()}, new java.security.SecureRandom());
|
||||||
|
URL console = new URL(url);
|
||||||
|
|
||||||
|
System.out.println("请求参数:" + value);
|
||||||
|
//System.out.println("请求参数:" + map);
|
||||||
|
HttpsURLConnection conn = (HttpsURLConnection) console.openConnection();
|
||||||
|
|
||||||
|
conn.setRequestProperty("Content-Type", "application/json; charset=UTF-8");
|
||||||
|
conn.setRequestProperty("Accept", "application/json");
|
||||||
|
conn.setRequestProperty("Accept-Encoding", "");
|
||||||
|
|
||||||
|
conn.setSSLSocketFactory(sc.getSocketFactory());
|
||||||
|
conn.setHostnameVerifier(new TrustAnyHostnameVerifier());
|
||||||
|
|
||||||
|
conn.setDoInput(true);
|
||||||
|
conn.setDoOutput(true);
|
||||||
|
|
||||||
|
PrintWriter out = new PrintWriter(conn.getOutputStream());//获取URLConnection对象对应的输出流
|
||||||
|
|
||||||
|
out.print(value);//发送请求参数即数据
|
||||||
|
|
||||||
|
out.flush();//缓冲数据
|
||||||
|
|
||||||
|
//获取URLConnection对象对应的输入流
|
||||||
|
InputStream is = conn.getInputStream();
|
||||||
|
//构造一个字符流缓存
|
||||||
|
BufferedReader br = new BufferedReader(new InputStreamReader(is));
|
||||||
|
|
||||||
|
String line = br.readLine();
|
||||||
|
while (line != null) {
|
||||||
|
str = new String(line.getBytes(), "UTF-8");//解决中文乱码问题
|
||||||
|
System.out.println(str);
|
||||||
|
line = br.readLine();
|
||||||
|
}
|
||||||
|
System.out.println("返回参数:" + str);
|
||||||
|
//关闭流
|
||||||
|
is.close();
|
||||||
|
//断开连接,最好写上,disconnect是在底层tcp socket链接空闲时才切断。如果正在被其他线程使用就不切断。
|
||||||
|
//固定多线程的话,如果不disconnect,链接会增多,直到收发不出信息。写上disconnect后正常一些。
|
||||||
|
conn.disconnect();
|
||||||
|
|
||||||
|
}catch (Exception e) {
|
||||||
|
log.error("错误信息",e);
|
||||||
|
CommonExceptionEnum.FRAME_EXCEPTION_COMMON_DATA_OTHER_ERROR.customValidName("https请求异常", true);
|
||||||
|
}
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
|
||||||
public static String to2HttpPost(String path, Map<String,String> data) {
|
public static String to2HttpPost(String path, Map<String,String> data) {
|
||||||
String str = "";
|
String str = "";
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user