mirror of
https://gitee.com/dromara/MaxKey.git
synced 2026-06-12 13:51:05 +08:00
HttpRequestAdapter optimize
This commit is contained in:
@@ -39,6 +39,8 @@ public class ContentType {
|
||||
|
||||
public static final String APPLICATION_XML_UTF8 = "application/xml;charset=UTF-8";
|
||||
|
||||
public static final String APPLICATION_FORM = "application/x-www-form-urlencoded";
|
||||
|
||||
public static final String IMAGE_GIF = "image/gif";
|
||||
|
||||
public static final String IMAGE_JPEG = "image/jpeg";
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright [2021] [MaxKey of copyright http://www.maxkey.top]
|
||||
* Copyright [2022] [MaxKey of copyright http://www.maxkey.top]
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -31,13 +31,18 @@ import org.apache.http.NameValuePair;
|
||||
import org.apache.http.client.config.RequestConfig;
|
||||
import org.apache.http.client.entity.UrlEncodedFormEntity;
|
||||
import org.apache.http.client.methods.CloseableHttpResponse;
|
||||
import org.apache.http.client.methods.HttpDelete;
|
||||
import org.apache.http.client.methods.HttpGet;
|
||||
import org.apache.http.client.methods.HttpPost;
|
||||
import org.apache.http.client.methods.HttpPut;
|
||||
import org.apache.http.client.methods.HttpRequestBase;
|
||||
import org.apache.http.entity.StringEntity;
|
||||
import org.apache.http.impl.client.CloseableHttpClient;
|
||||
import org.apache.http.impl.client.HttpClients;
|
||||
import org.apache.http.message.BasicNameValuePair;
|
||||
import org.apache.http.util.EntityUtils;
|
||||
import org.maxkey.constants.ContentType;
|
||||
import org.maxkey.util.AuthorizationHeaderUtils;
|
||||
import org.maxkey.util.JsonUtils;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
@@ -47,13 +52,9 @@ import org.springframework.stereotype.Component;
|
||||
public class HttpRequestAdapter {
|
||||
private static final Logger _logger = LoggerFactory.getLogger(HttpRequestAdapter.class);
|
||||
|
||||
private String mediaType = MediaType.FORM;
|
||||
private String mediaType = ContentType.APPLICATION_FORM;
|
||||
|
||||
public static class MediaType{
|
||||
public static String JSON = "JSON";
|
||||
public static String XML = "XML";
|
||||
public static String FORM = "FORM";
|
||||
}
|
||||
HashMap<String,String> headers = new HashMap<String,String>();
|
||||
|
||||
public HttpRequestAdapter(){}
|
||||
|
||||
@@ -62,71 +63,62 @@ public class HttpRequestAdapter {
|
||||
}
|
||||
|
||||
public String post(String url,Map<String, Object> parameterMap) {
|
||||
HashMap<String,String> headers = new HashMap<String,String>();
|
||||
headers.put("Content-Type", "application/x-www-form-urlencoded");
|
||||
setContentType(ContentType.APPLICATION_FORM);
|
||||
return post(url , parameterMap , headers);
|
||||
}
|
||||
|
||||
public HttpRequestAdapter addHeaderAuthorizationBearer(String token ) {
|
||||
headers.put("Authorization", AuthorizationHeaderUtils.createBearer(token));
|
||||
return this;
|
||||
}
|
||||
|
||||
public HttpRequestAdapter addHeaderAuthorizationBasic(String username, String password) {
|
||||
headers.put("Authorization", AuthorizationHeaderUtils.createBasic(username,password));
|
||||
return this;
|
||||
}
|
||||
|
||||
public HttpRequestAdapter setContentType(String contentType) {
|
||||
headers.put("Content-Type", contentType);
|
||||
return this;
|
||||
}
|
||||
|
||||
public HttpRequestAdapter addHeader(String name , String value ) {
|
||||
headers.put(name, value);
|
||||
return this;
|
||||
}
|
||||
|
||||
public String post(String url,Map<String, Object> parameterMap,HashMap<String,String> headers) {
|
||||
// 创建httpClient实例
|
||||
CloseableHttpClient httpClient = HttpClients.createDefault();
|
||||
CloseableHttpResponse httpResponse = null;
|
||||
// 创建httpPost远程连接实例
|
||||
HttpPost httpPost = new HttpPost(url);
|
||||
HttpPost httpMethod = new HttpPost(url);
|
||||
// 配置请求参数实例
|
||||
RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(35000)// 设置连接主机服务超时时间
|
||||
.setConnectionRequestTimeout(35000)// 设置连接请求超时时间
|
||||
.setSocketTimeout(60000)// 设置读取数据连接超时时间
|
||||
.build();
|
||||
// 为httpPost实例设置配置
|
||||
httpPost.setConfig(requestConfig);
|
||||
setRequestConfig(httpMethod);
|
||||
// 设置请求头
|
||||
if (null != headers && headers.size() > 0) {
|
||||
Set<Entry<String, String>> entrySet = headers.entrySet();
|
||||
// 循环遍历,获取迭代器
|
||||
Iterator<Entry<String, String>> iterator = entrySet.iterator();
|
||||
while (iterator.hasNext()) {
|
||||
Entry<String, String> mapEntry = iterator.next();
|
||||
_logger.trace("Name " + mapEntry.getKey() + " , Value " +mapEntry.getValue());
|
||||
httpPost.addHeader(mapEntry.getKey(), mapEntry.getValue());
|
||||
}
|
||||
}
|
||||
buildHeader(httpMethod,headers);
|
||||
|
||||
// 封装post请求参数
|
||||
if (null != parameterMap && parameterMap.size() > 0) {
|
||||
if(mediaType.equals(MediaType.FORM)) {
|
||||
List<NameValuePair> nvps = new ArrayList<NameValuePair>();
|
||||
// 通过map集成entrySet方法获取entity
|
||||
Set<Entry<String, Object>> entrySet = parameterMap.entrySet();
|
||||
// 循环遍历,获取迭代器
|
||||
Iterator<Entry<String, Object>> iterator = entrySet.iterator();
|
||||
while (iterator.hasNext()) {
|
||||
Entry<String, Object> mapEntry = iterator.next();
|
||||
_logger.debug("Name " + mapEntry.getKey() + " , Value " +mapEntry.getValue());
|
||||
nvps.add(new BasicNameValuePair(mapEntry.getKey(), mapEntry.getValue().toString()));
|
||||
}
|
||||
|
||||
if(mediaType.equals(ContentType.APPLICATION_FORM)) {
|
||||
// 为httpPost设置封装好的请求参数
|
||||
try {
|
||||
httpPost.setEntity(new UrlEncodedFormEntity(nvps, "UTF-8"));
|
||||
httpMethod.setEntity(buildFormEntity(parameterMap));
|
||||
} catch (UnsupportedEncodingException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}else if(mediaType.equals(MediaType.JSON)) {
|
||||
}else if(mediaType.equals(ContentType.APPLICATION_JSON)) {
|
||||
String jsonString = JsonUtils.gson2Json(parameterMap);
|
||||
StringEntity stringEntity =new StringEntity(jsonString, "UTF-8");
|
||||
stringEntity.setContentType("text/json");
|
||||
httpPost.setEntity(stringEntity);
|
||||
|
||||
|
||||
stringEntity.setContentType(ContentType.APPLICATION_JSON);
|
||||
httpMethod.setEntity(stringEntity);
|
||||
}
|
||||
_logger.debug("Post Message \n{} ", httpPost.getEntity().toString());
|
||||
_logger.debug("Post Message \n{} ", httpMethod.getEntity().toString());
|
||||
}
|
||||
|
||||
|
||||
try {
|
||||
// httpClient对象执行post请求,并返回响应参数对象
|
||||
httpResponse = httpClient.execute(httpPost);
|
||||
httpResponse = httpClient.execute(httpMethod);
|
||||
// 从响应对象中获取响应内容
|
||||
HttpEntity entity = httpResponse.getEntity();
|
||||
String content = EntityUtils.toString(entity);
|
||||
@@ -138,59 +130,33 @@ public class HttpRequestAdapter {
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
// 关闭资源
|
||||
if (null != httpResponse) {
|
||||
try {
|
||||
httpResponse.close();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
if (null != httpClient) {
|
||||
try {
|
||||
httpClient.close();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
close(httpClient,httpResponse);// 关闭资源
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public String postJson(String url,String jsonString,HashMap<String,String> headers) {
|
||||
|
||||
|
||||
public String post(String url,Object data) {
|
||||
// 创建httpClient实例
|
||||
CloseableHttpClient httpClient = HttpClients.createDefault();
|
||||
CloseableHttpResponse httpResponse = null;
|
||||
// 创建httpPost远程连接实例
|
||||
HttpPost httpPost = new HttpPost(url);
|
||||
HttpPost httpMethod = new HttpPost(url);
|
||||
// 配置请求参数实例
|
||||
RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(35000)// 设置连接主机服务超时时间
|
||||
.setConnectionRequestTimeout(35000)// 设置连接请求超时时间
|
||||
.setSocketTimeout(60000)// 设置读取数据连接超时时间
|
||||
.build();
|
||||
// 为httpPost实例设置配置
|
||||
httpPost.setConfig(requestConfig);
|
||||
setRequestConfig(httpMethod);
|
||||
// 设置请求头
|
||||
if (null != headers && headers.size() > 0) {
|
||||
Set<Entry<String, String>> entrySet = headers.entrySet();
|
||||
// 循环遍历,获取迭代器
|
||||
Iterator<Entry<String, String>> iterator = entrySet.iterator();
|
||||
while (iterator.hasNext()) {
|
||||
Entry<String, String> mapEntry = iterator.next();
|
||||
_logger.trace("Name " + mapEntry.getKey() + " , Value " +mapEntry.getValue());
|
||||
httpPost.addHeader(mapEntry.getKey(), mapEntry.getValue());
|
||||
}
|
||||
}
|
||||
buildHeader(httpMethod,headers);
|
||||
|
||||
// 封装post请求参数
|
||||
// 封装put请求参数
|
||||
String jsonString = JsonUtils.gson2Json(data);
|
||||
StringEntity stringEntity =new StringEntity(jsonString, "UTF-8");
|
||||
stringEntity.setContentType("application/json");
|
||||
httpPost.setEntity(stringEntity);
|
||||
|
||||
stringEntity.setContentType(ContentType.APPLICATION_JSON);
|
||||
httpMethod.setEntity(stringEntity);
|
||||
_logger.debug("Post Message \n{} ", httpMethod.getEntity().toString());
|
||||
|
||||
try {
|
||||
// httpClient对象执行post请求,并返回响应参数对象
|
||||
httpResponse = httpClient.execute(httpPost);
|
||||
// httpClient对象执行put请求,并返回响应参数对象
|
||||
httpResponse = httpClient.execute(httpMethod);
|
||||
// 从响应对象中获取响应内容
|
||||
HttpEntity entity = httpResponse.getEntity();
|
||||
String content = EntityUtils.toString(entity);
|
||||
@@ -202,28 +168,51 @@ public class HttpRequestAdapter {
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
// 关闭资源
|
||||
if (null != httpResponse) {
|
||||
try {
|
||||
httpResponse.close();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
if (null != httpClient) {
|
||||
try {
|
||||
httpClient.close();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
close(httpClient,httpResponse);// 关闭资源
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public String put(String url,Object data) {
|
||||
// 创建httpClient实例
|
||||
CloseableHttpClient httpClient = HttpClients.createDefault();
|
||||
CloseableHttpResponse httpResponse = null;
|
||||
// 创建httpPost远程连接实例
|
||||
HttpPut httpMethod = new HttpPut(url);
|
||||
// 配置请求参数实例
|
||||
setRequestConfig(httpMethod);
|
||||
// 设置请求头
|
||||
buildHeader(httpMethod,headers);
|
||||
|
||||
// 封装put请求参数
|
||||
String jsonString = JsonUtils.gson2Json(data);
|
||||
StringEntity stringEntity =new StringEntity(jsonString, "UTF-8");
|
||||
stringEntity.setContentType(ContentType.APPLICATION_JSON);
|
||||
httpMethod.setEntity(stringEntity);
|
||||
_logger.debug("Post Message \n{} ", httpMethod.getEntity().toString());
|
||||
|
||||
try {
|
||||
// httpClient对象执行put请求,并返回响应参数对象
|
||||
httpResponse = httpClient.execute(httpMethod);
|
||||
// 从响应对象中获取响应内容
|
||||
HttpEntity entity = httpResponse.getEntity();
|
||||
String content = EntityUtils.toString(entity);
|
||||
_logger.debug("Http Response StatusCode {} , Content {}",
|
||||
httpResponse.getStatusLine().getStatusCode(),
|
||||
content
|
||||
);
|
||||
return content;
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
close(httpClient,httpResponse);// 关闭资源
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
public String get(String url) {
|
||||
HashMap<String,String> headers = new HashMap<String,String>();
|
||||
headers.put("Content-Type", "application/x-www-form-urlencoded");
|
||||
headers.put("Content-Type", ContentType.APPLICATION_FORM);
|
||||
return get(url , headers);
|
||||
}
|
||||
|
||||
@@ -232,29 +221,15 @@ public class HttpRequestAdapter {
|
||||
CloseableHttpClient httpClient = HttpClients.createDefault();
|
||||
CloseableHttpResponse httpResponse = null;
|
||||
// 创建httpPost远程连接实例
|
||||
HttpGet httpGet = new HttpGet(url);
|
||||
HttpGet httpMethod = new HttpGet(url);
|
||||
// 配置请求参数实例
|
||||
RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(35000)// 设置连接主机服务超时时间
|
||||
.setConnectionRequestTimeout(35000)// 设置连接请求超时时间
|
||||
.setSocketTimeout(60000)// 设置读取数据连接超时时间
|
||||
.build();
|
||||
// 为httpGet实例设置配置
|
||||
httpGet.setConfig(requestConfig);
|
||||
setRequestConfig(httpMethod);
|
||||
// 设置请求头
|
||||
if (null != headers && headers.size() > 0) {
|
||||
Set<Entry<String, String>> entrySet = headers.entrySet();
|
||||
// 循环遍历,获取迭代器
|
||||
Iterator<Entry<String, String>> iterator = entrySet.iterator();
|
||||
while (iterator.hasNext()) {
|
||||
Entry<String, String> mapEntry = iterator.next();
|
||||
_logger.trace("Name " + mapEntry.getKey() + " , Value " +mapEntry.getValue());
|
||||
httpGet.addHeader(mapEntry.getKey(), mapEntry.getValue());
|
||||
}
|
||||
}
|
||||
buildHeader(httpMethod,headers);
|
||||
|
||||
try {
|
||||
// httpClient对象执行post请求,并返回响应参数对象
|
||||
httpResponse = httpClient.execute(httpGet);
|
||||
// httpClient对象执行get请求,并返回响应参数对象
|
||||
httpResponse = httpClient.execute(httpMethod);
|
||||
// 从响应对象中获取响应内容
|
||||
HttpEntity entity = httpResponse.getEntity();
|
||||
String content = EntityUtils.toString(entity);
|
||||
@@ -266,23 +241,105 @@ public class HttpRequestAdapter {
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
// 关闭资源
|
||||
if (null != httpResponse) {
|
||||
try {
|
||||
httpResponse.close();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
if (null != httpClient) {
|
||||
try {
|
||||
httpClient.close();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
close(httpClient,httpResponse);// 关闭资源
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public String delete(String url) {
|
||||
// 创建httpClient实例
|
||||
CloseableHttpClient httpClient = HttpClients.createDefault();
|
||||
CloseableHttpResponse httpResponse = null;
|
||||
// 创建HttpDelete远程连接实例
|
||||
HttpDelete httpMethod = new HttpDelete(url);
|
||||
// 配置请求参数实例
|
||||
setRequestConfig(httpMethod);
|
||||
// 设置请求头
|
||||
buildHeader(httpMethod,headers);
|
||||
|
||||
try {
|
||||
// httpClient对象执行post请求,并返回响应参数对象
|
||||
httpResponse = httpClient.execute(httpMethod);
|
||||
// 从响应对象中获取响应内容
|
||||
HttpEntity entity = httpResponse.getEntity();
|
||||
String content = EntityUtils.toString(entity);
|
||||
_logger.debug("Http Response StatusCode {} , Content {}",
|
||||
httpResponse.getStatusLine().getStatusCode(),
|
||||
content
|
||||
);
|
||||
return content;
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
close(httpClient,httpResponse);// 关闭资源
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param HttpRequest
|
||||
* @param headers
|
||||
*/
|
||||
void buildHeader(HttpRequestBase httpRequest,HashMap<String,String> headers) {
|
||||
// 设置请求头
|
||||
if (null != headers && headers.size() > 0) {
|
||||
Set<Entry<String, String>> entrySet = headers.entrySet();
|
||||
// 循环遍历,获取迭代器
|
||||
Iterator<Entry<String, String>> iterator = entrySet.iterator();
|
||||
while (iterator.hasNext()) {
|
||||
Entry<String, String> mapEntry = iterator.next();
|
||||
_logger.trace("Name " + mapEntry.getKey() + " , Value " +mapEntry.getValue());
|
||||
httpRequest.addHeader(mapEntry.getKey(), mapEntry.getValue());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
UrlEncodedFormEntity buildFormEntity(Map<String, Object> parameterMap)
|
||||
throws UnsupportedEncodingException {
|
||||
List<NameValuePair> nvps = new ArrayList<NameValuePair>();
|
||||
// 通过map集成entrySet方法获取entity
|
||||
Set<Entry<String, Object>> entrySet = parameterMap.entrySet();
|
||||
// 循环遍历,获取迭代器
|
||||
Iterator<Entry<String, Object>> iterator = entrySet.iterator();
|
||||
while (iterator.hasNext()) {
|
||||
Entry<String, Object> mapEntry = iterator.next();
|
||||
_logger.debug("Name " + mapEntry.getKey() + " , Value " +mapEntry.getValue());
|
||||
nvps.add(new BasicNameValuePair(mapEntry.getKey(), mapEntry.getValue().toString()));
|
||||
}
|
||||
|
||||
// 为httpPost设置封装好的请求参数
|
||||
return new UrlEncodedFormEntity(nvps, "UTF-8");
|
||||
}
|
||||
|
||||
void setRequestConfig(HttpRequestBase httpMethod){
|
||||
RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(35000)// 设置连接主机服务超时时间
|
||||
.setConnectionRequestTimeout(35000)// 设置连接请求超时时间
|
||||
.setSocketTimeout(60000)// 设置读取数据连接超时时间
|
||||
.build();
|
||||
// 为httpMethod实例设置配置
|
||||
httpMethod.setConfig(requestConfig);
|
||||
}
|
||||
|
||||
/**
|
||||
* 关闭资源
|
||||
* @param httpClient
|
||||
* @param httpResponse
|
||||
*/
|
||||
void close(CloseableHttpClient httpClient,CloseableHttpResponse httpResponse) {
|
||||
if (null != httpResponse) {
|
||||
try {
|
||||
httpResponse.close();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
if (null != httpClient) {
|
||||
try {
|
||||
httpClient.close();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -2,7 +2,6 @@ package org.maxkey.provision.thread;
|
||||
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.mybatis.jpa.query.Query;
|
||||
@@ -16,7 +15,6 @@ import org.maxkey.persistence.service.ConnectorsService;
|
||||
import org.maxkey.provision.ProvisionAction;
|
||||
import org.maxkey.provision.ProvisionMessage;
|
||||
import org.maxkey.provision.ProvisionTopic;
|
||||
import org.maxkey.util.AuthorizationHeaderUtils;
|
||||
import org.maxkey.util.DateUtils;
|
||||
import org.maxkey.util.JsonUtils;
|
||||
import org.maxkey.util.ObjectTransformer;
|
||||
@@ -147,46 +145,31 @@ public class ProvisioningRunner {
|
||||
String provisionUser(UserInfo user,String baseUrl,String actionType,Connectors connector){
|
||||
baseUrl = baseUrl + "Users/" + getActionType(actionType);
|
||||
_logger.debug("URL {} ", baseUrl);
|
||||
HashMap<String,String> authorizationMap = AuthorizationHeaderUtils.authorization(
|
||||
AuthorizationHeaderUtils.createBasic(
|
||||
connector.getPrincipal(),
|
||||
return new HttpRequestAdapter()
|
||||
.addHeaderAuthorizationBasic(
|
||||
connector.getPrincipal(),
|
||||
PasswordReciprocal.getInstance().decoder(connector.getCredentials()))
|
||||
);
|
||||
|
||||
return new HttpRequestAdapter().postJson( baseUrl,
|
||||
JsonUtils.gson2Json(user),
|
||||
authorizationMap
|
||||
);
|
||||
.post(baseUrl, user);
|
||||
}
|
||||
|
||||
String provisionOrganization(Organizations organizations,String baseUrl,String actionType,Connectors connector){
|
||||
String provisionOrganization(Organizations organization,String baseUrl,String actionType,Connectors connector){
|
||||
baseUrl = baseUrl + "Organizations/"+ getActionType(actionType);
|
||||
_logger.debug("URL {} ", baseUrl);
|
||||
HashMap<String,String> authorizationMap = AuthorizationHeaderUtils.authorization(
|
||||
AuthorizationHeaderUtils.createBasic(
|
||||
connector.getPrincipal(),
|
||||
return new HttpRequestAdapter()
|
||||
.addHeaderAuthorizationBasic(
|
||||
connector.getPrincipal(),
|
||||
PasswordReciprocal.getInstance().decoder(connector.getCredentials()))
|
||||
);
|
||||
|
||||
return new HttpRequestAdapter().postJson( baseUrl,
|
||||
JsonUtils.gson2Json(organizations),
|
||||
authorizationMap
|
||||
);
|
||||
.post(baseUrl, organization);
|
||||
}
|
||||
|
||||
String provisionChangePassword(ChangePassword changePassword,String baseUrl,String actionType,Connectors connector){
|
||||
baseUrl = baseUrl + "Users/changePassword";
|
||||
_logger.debug("URL {} ", baseUrl);
|
||||
HashMap<String,String> authorizationMap = AuthorizationHeaderUtils.authorization(
|
||||
AuthorizationHeaderUtils.createBasic(
|
||||
connector.getPrincipal(),
|
||||
return new HttpRequestAdapter()
|
||||
.addHeaderAuthorizationBasic(
|
||||
connector.getPrincipal(),
|
||||
PasswordReciprocal.getInstance().decoder(connector.getCredentials()))
|
||||
);
|
||||
|
||||
return new HttpRequestAdapter().postJson( baseUrl,
|
||||
JsonUtils.gson2Json(changePassword),
|
||||
authorizationMap
|
||||
);
|
||||
.post(baseUrl, changePassword);
|
||||
}
|
||||
|
||||
public class ProvisionMessageRowMapper implements RowMapper<ProvisionMessage> {
|
||||
|
||||
@@ -21,7 +21,6 @@
|
||||
package org.maxkey.authz.token.endpoint;
|
||||
|
||||
import java.lang.reflect.InvocationTargetException;
|
||||
import javax.servlet.http.Cookie;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
@@ -42,9 +41,7 @@ import org.maxkey.entity.apps.Apps;
|
||||
import org.maxkey.entity.apps.AppsJwtDetails;
|
||||
import org.maxkey.persistence.service.AppsJwtDetailsService;
|
||||
import org.maxkey.util.Instance;
|
||||
import org.maxkey.web.HttpRequestAdapter;
|
||||
import org.maxkey.web.WebConstants;
|
||||
import org.maxkey.web.WebContext;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -138,7 +135,7 @@ public class JwtAuthorizeEndpoint extends AuthorizeBaseEndpoint{
|
||||
|
||||
JWKSetKeyStore jwkSetKeyStore = new JWKSetKeyStore("{\"keys\": [" + jwkSetString + "]}");
|
||||
if(StringUtils.isNotBlank(mediaType)
|
||||
&& mediaType.equalsIgnoreCase(HttpRequestAdapter.MediaType.XML)) {
|
||||
&& mediaType.equalsIgnoreCase("xml")) {
|
||||
response.setContentType(ContentType.APPLICATION_XML_UTF8);
|
||||
}else {
|
||||
response.setContentType(ContentType.APPLICATION_JSON_UTF8);
|
||||
|
||||
@@ -53,7 +53,6 @@ import org.maxkey.entity.Message;
|
||||
import org.maxkey.entity.UserInfo;
|
||||
import org.maxkey.entity.apps.Apps;
|
||||
import org.maxkey.entity.apps.oauth2.provider.ClientDetails;
|
||||
import org.maxkey.web.HttpRequestAdapter;
|
||||
import org.maxkey.web.WebConstants;
|
||||
import org.maxkey.web.WebContext;
|
||||
import org.slf4j.Logger;
|
||||
@@ -324,7 +323,7 @@ public class AuthorizationEndpoint extends AbstractEndpoint {
|
||||
JWKSetKeyStore jwkSetKeyStore = new JWKSetKeyStore("{\"keys\": [" + jwkSetString + "]}");
|
||||
|
||||
if(StringUtils.hasText(mediaType)
|
||||
&& mediaType.equalsIgnoreCase(HttpRequestAdapter.MediaType.XML)) {
|
||||
&& mediaType.equalsIgnoreCase("xml")) {
|
||||
response.setContentType(ContentType.APPLICATION_XML_UTF8);
|
||||
}else {
|
||||
response.setContentType(ContentType.APPLICATION_JSON_UTF8);
|
||||
|
||||
@@ -20,10 +20,10 @@ package org.maxkey.synchronizer.feishu;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import org.maxkey.constants.ContentType;
|
||||
import org.maxkey.synchronizer.entity.AccessToken;
|
||||
import org.maxkey.util.JsonUtils;
|
||||
import org.maxkey.web.HttpRequestAdapter;
|
||||
import org.maxkey.web.HttpRequestAdapter.MediaType;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
@@ -48,7 +48,7 @@ public class FeishuAccessTokenService {
|
||||
|
||||
|
||||
public String requestToken() {
|
||||
HttpRequestAdapter request =new HttpRequestAdapter(MediaType.JSON);
|
||||
HttpRequestAdapter request =new HttpRequestAdapter(ContentType.APPLICATION_JSON);
|
||||
Map<String, Object> parameterMap = new HashMap<String, Object>();
|
||||
parameterMap.put("app_id", appId);
|
||||
parameterMap.put("app_secret", appSecret);
|
||||
|
||||
Reference in New Issue
Block a user