UNPKG

yao-node-client

Version:

A node client for yao application development

105 lines (104 loc) 5.36 kB
export type HttpHeaders = object | object[]; /** * 使用 http 对象发送 HTTP 请求,参数表与返回值与 http.* 处理器一致 * 虽然可以直接使用fetch,但是在参数与文件处理上比较麻烦 */ export declare const http: { /** * YAO Http Post 代理 * http.Post [<URL>, <Payload (可选)>, <Files (可选)>, <Query(可选)>, <Headers (可选)>] 响应结果 发送 HTTP POST 请求 示例 文档 * @param {string} URL 目标网址 * @param {object} Payload 请求数据, 示例: {"name":"Pet"}, http.Post 发送时候自动添加 Content-type: application/json; charset=utf-8 Header * @param {object} Files 上传文件, 示例: {"file":"/path/root/file"}, 文件路径为相对路径 相对地址, 示例: /text/foo.txt, 绝对路径为: /data/app/data/text/foo.txt。 如 Files 不为 null,自动添加 Content-type: multipart/form-data Header * @param {object} Query Query 参数, 示例: {"foo":"bar", "arr[]":"hello,world"}, 对应 Query string: foo=bar&arr[]=hello&arr[]=world * @param {HttpHeaders} Headers 请求 Header, 示例: {"Secret":"********"} 或 [{"Secret":"********"}, {"Secret":"#####"}] * @returns */ Post: (URL: string, Payload?: object, Files?: object, Query?: object, Headers?: HttpHeaders) => any; /** * YAO Http Get 代理 * http.Get [<URL>, <Query (可选)>, <Headers (可选)>] 响应结果 发送 HTTP GET 请求 示例 文档 * @param {string} URL 请求数据 * @param {object} Query Query 参数 * @param {object} Headers 请求 Header * @returns */ Get: (URL: string, Query?: object, Headers?: HttpHeaders) => any; /** * YAO Http Head 代理 * * http.Head [<URL>, <Payload (可选)>, <Query (可选)>, <Headers (可选)>] 响应结果 发送 HTTP HEAD 请求 示例 文档 * @param {string} URL 目标网址 * @param {object} Payload 请求数据 * @param {object} Files 上传文件 * @param {object} Query Query 参数 * @param {object} Headers 请求 Header * @returns */ Head: (URL: string, Payload?: object, Files?: object, Query?: object, Headers?: HttpHeaders) => any; /** * YAO Http Put 代理 * * http.Put [<URL>, <Payload (可选)>, <Query(可选)>, <Headers (可选)>] 响应结果 发送 HTTP PUT 请求 示例 文档 * @param {string} URL 目标网址 * @param {object} Payload 请求数据 * @param {object} Files 上传文件 * @param {object} Query Query 参数 * @param {HttpHeaders} Headers 请求 Header * @returns */ Put: (URL: string, Payload?: object, Files?: object, Query?: object, Headers?: HttpHeaders) => any; /** * YAO Http Patch Put 代理 * * http.Patch [<URL>, <Payload (可选)>, <Query(可选)>, <Headers (可选)>] 响应结果 发送 HTTP PATCH 请求 示例 文档 * @param {string} URL 目标网址 * @param {object} Payload 请求数据 * @param {object} Files 上传文件 * @param {object} Query Query 参数 * @param {HttpHeaders} Headers 请求 Header * @returns */ Patch: (URL: string, Payload?: object, Files?: object, Query?: object, Headers?: HttpHeaders) => any; /** * YAO Http Delete 代理 * * http.Delete [<URL>, <Payload (可选)>, <Query(可选)>, <Headers (可选)>] 响应结果 发送 HTTP DELETE 请求 示例 文档 * @param {string} URL 目标网址 * @param {object} Payload 请求数据 * @param {object} Files 上传文件 * @param {object} Query Query 参数 * @param {HttpHeaders} Headers 请求 Header * @returns */ Delete: (URL: string, Payload?: object, Files?: object, Query?: object, Headers?: HttpHeaders) => any; /** * YAO Http Send 代理 * * http.Send [<METHOD>, <URL>, <Query (可选)>, <Payload (可选)>, <Headers (可选)>] 响应结果 发送 HTTP POST 请求, 返回 JSON 数据 示例 文档 * @param {string} URL 目标网址 * @param {object} Payload 请求数据 * @param {object} Files 上传文件 * @param {object} Query Query 参数 * @param {HttpHeaders} Headers 请求 Header * @returns */ Send: (METHOD: string, URL: string, Payload?: object, Files?: object, Query?: object, Headers?: HttpHeaders) => any; /** * http.Stream * args[0] Method GET/POST/PUT/PATCH/DELETE/... * args[1] URL * args[2] Handler procsss name * args[3] Payload <Optional> "Foo", {"foo":"bar"}, ["foo", "bar", {"k1":"v1"}], "/root/path" * args[4] Query Params <Optional> {"k1":"v1", "k2":"v2"}, ["k1=v1","k1"="v11","k2"="v2"], [{"k1":"v1"},{"k1":"v11"},{"k2":"v2"}], k1=v1&k1=v11&k2=k2 * args[5] Headers <Optional> {"K1":"V1","K2":"V2"} [{"K1":"V1"},{"K1":"V11"},{"K2":"V2"}] * @param METHOD HTTP 调用方法 * @param URL http url地址 * @param Callback 回调函数 * @param Payload 请求内容 * @param Query 查询参数对象 * @param Headers 请求头 * @returns normal return 1 exception return -1 break return 0 */ Stream: (METHOD: string, URL: string, Callback?: Function, Payload?: object, Query?: object, Headers?: HttpHeaders) => number; };