All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.qbit.service.QbitRequestService Maven / Gradle / Ivy

package com.qbit.service;

import com.qbit.httpclient.QbitHttpClientBuilder;
import com.qbit.service.dto.Output;
import com.qbit.service.impl.QbitRequestServiceImpl;
import org.apache.http.impl.client.CloseableHttpClient;

import java.util.Map;

/**
 * @author klover
 * description QbitRequestService
 * date 2022/10/14 12:18
 */
public interface QbitRequestService {
    /**
     * Service构造器
     */
    class Builder {
        private String accessToken;

        /**
         * 设置请求配置,以该配置构造默认的httpClient,若未调用httpClient()方法,则必须调用该方法
         *
         * @param accessToken access_token
         * @return Builder
         */
        public Builder config(String accessToken) {
            this.accessToken = accessToken;
            return this;
        }

        /**
         * 构造服务
         *
         * @return QbitService
         */
        public QbitRequestService build() {
            return new QbitRequestServiceImpl(accessToken);
        }
    }

    /**
     * post 请求
     *
     * @param url    url
     * @param params 参数
     * @return String
     */

    Output postRequest(String url, Map params);

    /**
     * put 请求
     *
     * @param url    url
     * @param params 参数
     * @return String
     */

    Output putRequest(String url, Map params);

    /**
     * delete 请求
     *
     * @param url    url
     * @param params 参数
     * @return String
     */

    Output deleteRequest(String url, Map params);

    /**
     * get 请求
     *
     * @param url url
     * @return String
     */
    Output getRequest(String url);

    /**
     * get 请求
     *
     * @param url   url
     * @param query 参数
     * @return String
     */
    Output getRequest(String url, Map query);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy