You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
103 lines
4.2 KiB
103 lines
4.2 KiB
/*
|
|
* Licensed to the Apache Software Foundation (ASF) under one
|
|
* or more contributor license agreements. See the NOTICE file
|
|
* distributed with this work for additional information
|
|
* regarding copyright ownership. The ASF licenses this file
|
|
* to you 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 com.xmomen.module.sms.api;
|
|
|
|
import com.xmomen.module.sms.util.HttpUtil;
|
|
|
|
/**
|
|
* Client
|
|
*/
|
|
public class Client {
|
|
/**
|
|
* 发送请求
|
|
*
|
|
* @param request request对象
|
|
* @return Response
|
|
* @throws Exception
|
|
*/
|
|
public static Response execute(Request request) throws Exception {
|
|
switch (request.getMethod()) {
|
|
case GET:
|
|
// 发送GET请求
|
|
return HttpUtil.httpGet(request.getHost(), request.getPath(),
|
|
request.getTimeout(),
|
|
request.getHeaders(),
|
|
request.getQuerys(),
|
|
request.getSignHeaderPrefixList(),
|
|
request.getAppKey(), request.getAppSecret());
|
|
case POST_FORM:
|
|
// 发送POST表单请求
|
|
return HttpUtil.httpPost(request.getHost(), request.getPath(),
|
|
request.getTimeout(),
|
|
request.getHeaders(),
|
|
request.getQuerys(),
|
|
request.getBodys(),
|
|
request.getSignHeaderPrefixList(),
|
|
request.getAppKey(), request.getAppSecret());
|
|
case POST_STRING:
|
|
// 发送POST字符串请求
|
|
return HttpUtil.httpPost(request.getHost(), request.getPath(),
|
|
request.getTimeout(),
|
|
request.getHeaders(),
|
|
request.getQuerys(),
|
|
request.getStringBody(),
|
|
request.getSignHeaderPrefixList(),
|
|
request.getAppKey(), request.getAppSecret());
|
|
case POST_BYTES:
|
|
// 发送POST字节数组请求
|
|
return HttpUtil.httpPost(request.getHost(), request.getPath(),
|
|
request.getTimeout(),
|
|
request.getHeaders(),
|
|
request.getQuerys(),
|
|
request.getBytesBody(),
|
|
request.getSignHeaderPrefixList(),
|
|
request.getAppKey(), request.getAppSecret());
|
|
case PUT_STRING:
|
|
// 发送PUT字符串请求
|
|
return HttpUtil.httpPut(request.getHost(), request.getPath(),
|
|
request.getTimeout(),
|
|
request.getHeaders(),
|
|
request.getQuerys(),
|
|
request.getStringBody(),
|
|
request.getSignHeaderPrefixList(),
|
|
request.getAppKey(), request.getAppSecret());
|
|
case PUT_BYTES:
|
|
// 发送PUT字节数组请求
|
|
return HttpUtil.httpPut(request.getHost(), request.getPath(),
|
|
request.getTimeout(),
|
|
request.getHeaders(),
|
|
request.getQuerys(),
|
|
request.getBytesBody(),
|
|
request.getSignHeaderPrefixList(),
|
|
request.getAppKey(), request.getAppSecret());
|
|
case DELETE:
|
|
// 发送DELETE请求
|
|
return HttpUtil.httpDelete(request.getHost(), request.getPath(),
|
|
request.getTimeout(),
|
|
request.getHeaders(),
|
|
request.getQuerys(),
|
|
request.getSignHeaderPrefixList(),
|
|
request.getAppKey(), request.getAppSecret());
|
|
default:
|
|
// 不支持的请求方法
|
|
throw new IllegalArgumentException(String.format("unsupported method:%s", request.getMethod()));
|
|
}
|
|
}
|
|
}
|