Files
gf/g/net/ghttp/ghttp_client_api.go

96 lines
3.1 KiB
Go
Raw Normal View History

// Copyright 2017 gf Author(https://github.com/gogf/gf). All Rights Reserved.
2017-12-29 16:03:30 +08:00
//
// This Source Code Form is subject to the terms of the MIT License.
// If a copy of the MIT was not distributed with this file,
// You can obtain one at https://github.com/gogf/gf.
2018-04-13 15:19:31 +08:00
// HTTP客户端请求.
2017-12-31 18:19:58 +08:00
2017-11-23 10:21:28 +08:00
package ghttp
2017-12-07 14:57:16 +08:00
func Get(url string) (*ClientResponse, error) {
2019-06-19 09:06:52 +08:00
return DoRequest("GET", url)
2017-11-23 10:21:28 +08:00
}
2019-06-19 09:06:52 +08:00
func Put(url string, data ...interface{}) (*ClientResponse, error) {
return DoRequest("PUT", url, data...)
2017-11-23 10:21:28 +08:00
}
2019-06-19 09:06:52 +08:00
func Post(url string, data ...interface{}) (*ClientResponse, error) {
return DoRequest("POST", url, data...)
2017-11-23 10:21:28 +08:00
}
2019-06-19 09:06:52 +08:00
func Delete(url string, data ...interface{}) (*ClientResponse, error) {
return DoRequest("DELETE", url, data...)
2017-11-23 10:21:28 +08:00
}
2019-06-19 09:06:52 +08:00
func Head(url string, data ...interface{}) (*ClientResponse, error) {
return DoRequest("HEAD", url, data...)
2017-11-23 10:21:28 +08:00
}
2019-06-19 09:06:52 +08:00
func Patch(url string, data ...interface{}) (*ClientResponse, error) {
return DoRequest("PATCH", url, data...)
2017-11-23 10:21:28 +08:00
}
2019-06-19 09:06:52 +08:00
func Connect(url string, data ...interface{}) (*ClientResponse, error) {
return DoRequest("CONNECT", url, data...)
2017-11-23 10:21:28 +08:00
}
2019-06-19 09:06:52 +08:00
func Options(url string, data ...interface{}) (*ClientResponse, error) {
return DoRequest("OPTIONS", url, data...)
2017-11-23 10:21:28 +08:00
}
2019-06-19 09:06:52 +08:00
func Trace(url string, data ...interface{}) (*ClientResponse, error) {
return DoRequest("TRACE", url, data...)
2017-11-23 10:21:28 +08:00
}
2017-12-07 14:57:16 +08:00
// 该方法支持二进制提交数据
2019-06-19 09:06:52 +08:00
func DoRequest(method, url string, data ...interface{}) (*ClientResponse, error) {
return NewClient().DoRequest(method, url, data...)
2017-11-23 10:21:28 +08:00
}
// GET请求并返回服务端结果(内部会自动读取服务端返回结果并关闭缓冲区指针)
2019-06-19 09:06:52 +08:00
func GetContent(url string, data ...interface{}) string {
return RequestContent("GET", url, data...)
}
// PUT请求并返回服务端结果(内部会自动读取服务端返回结果并关闭缓冲区指针)
2019-06-19 09:06:52 +08:00
func PutContent(url string, data ...interface{}) string {
return RequestContent("PUT", url, data...)
}
// POST请求并返回服务端结果(内部会自动读取服务端返回结果并关闭缓冲区指针)
2019-06-19 09:06:52 +08:00
func PostContent(url string, data ...interface{}) string {
return RequestContent("POST", url, data...)
}
// DELETE请求并返回服务端结果(内部会自动读取服务端返回结果并关闭缓冲区指针)
2019-06-19 09:06:52 +08:00
func DeleteContent(url string, data ...interface{}) string {
return RequestContent("DELETE", url, data...)
}
2019-06-19 09:06:52 +08:00
func HeadContent(url string, data ...interface{}) string {
return RequestContent("HEAD", url, data...)
}
2019-06-19 09:06:52 +08:00
func PatchContent(url string, data ...interface{}) string {
return RequestContent("PATCH", url, data...)
}
2019-06-19 09:06:52 +08:00
func ConnectContent(url string, data ...interface{}) string {
return RequestContent("CONNECT", url, data...)
}
2019-06-19 09:06:52 +08:00
func OptionsContent(url string, data ...interface{}) string {
return RequestContent("OPTIONS", url, data...)
}
2019-06-19 09:06:52 +08:00
func TraceContent(url string, data ...interface{}) string {
return RequestContent("TRACE", url, data...)
}
// 请求并返回服务端结果(内部会自动读取服务端返回结果并关闭缓冲区指针)
2019-06-19 09:06:52 +08:00
func RequestContent(method string, url string, data ...interface{}) string {
return NewClient().DoRequestContent(method, url, data...)
}