Files
mayfly-go/mayfly_go_web/src/common/Api.ts

78 lines
1.5 KiB
TypeScript
Raw Normal View History

import request from './request'
/**
* api请求
*/
class Api {
/**
* url
*/
url: string;
/**
*
*/
method: string;
constructor(url: string, method: string) {
this.url = url;
this.method = method;
}
/**
* rl
* @param {String} uri url
*/
setUrl(url: string) {
this.url = url;
return this;
}
/**
* url的请求方法
* @param {String} method
*/
setMethod(method: string) {
this.method = method;
return this;
}
/**
* url
*/
getUrl() {
return request.getApiUrl(this.url);
}
/**
* url
* @param {Object} param
*/
request(param: any = null): Promise<any> {
return request.send(this, param);
}
/**
* url
* @param {Object} param
*/
requestWithHeaders(param: any, headers: any): Promise<any> {
return request.sendWithHeaders(this, param, headers);
}
/** 静态方法 **/
/**
* Api对象url与method属性
* @param url url
* @param method (get,post,put,delete...)
*/
static create(url: string, method: string) {
return new Api(url, method);
}
}
export default Api