最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用golang進行http,get或postJson請求

 更新時間:2023年12月13日 10:50:14   作者:彥楠  
這篇文章主要為大家詳細介紹了如何使用golang進行http,get或postJson請求,文中的示例代碼簡潔易懂,具有一定的借鑒價值,感興趣的小伙伴可以了解一下

1、http封裝get,postJson類

package httpUtil

import (
	"bytes"
	logxx "go-gift-panel/src/log"
	"io"
	"io/ioutil"
	"net/http"
)

func PostJson(url string, jsonData []byte) string {
	logxx.Log.Info("請求的url=", url, " 請求的JSON Data:", string(jsonData))         // 輸出 JSON 格式的數據
	resp, err := http.Post(url, "application/json", bytes.NewBuffer(jsonData)) // 發(fā)起 POST 請求
	if err != nil {
		logxx.Log.Error("ERROR postJson請求異常 http.Post err:", err)
		return "e"
	}
	defer func(Body io.ReadCloser) {
		err := Body.Close()
		if err != nil {
			logxx.Log.Error("ERROR postJson請求異常 Body.Close err:", err)
		}
	}(resp.Body)
	body, err := ioutil.ReadAll(resp.Body) // 讀取響應內容
	if err != nil {
		logxx.Log.Error("ERROR postJson讀取body異常 ioutil.ReadAll err:", err)
		return "e"
	}
	logxx.Log.Info("請求返回內容 Response Body:", string(body), " Response Status:", resp.Status) // 輸出響應內容
	return string(body)
}

func Get(url string) {
	logxx.Log.Info("請求的url=", url) // 輸出
	resp, err := http.Get(url)     // 發(fā)起 GET 請求
	if err != nil {
		logxx.Log.Error("ERROR Get請求異常 http.Post err:", err)
		return
	}
	defer func(Body io.ReadCloser) {
		err := Body.Close()
		if err != nil {
			logxx.Log.Error("ERROR Get請求異常 Body.Close err:", err)
		}
	}(resp.Body)
	body, err := ioutil.ReadAll(resp.Body) // 讀取響應內容
	if err != nil {
		logxx.Log.Error("ERROR Get讀取body異常:", err)
		return
	}
	logxx.Log.Info("請求返回內容 Response Body:", string(body), " Response Status:", resp.Status) // 輸出響應內容
}

2、日志logxx類

package logxx

import (
	"github.com/sirupsen/logrus"
	"gopkg.in/natefinch/lumberjack.v2"
	"io"
	"os"
)

var Log = logrus.New()

// var file *os.File

func Init() {

	logFile := &lumberjack.Logger{
		Filename:   "/data/giftpanel/logs/giftpanel_.log",
		MaxSize:    100,   // megabytes 單個文件大小100MB
		MaxBackups: 100,   //保留100個文件
		MaxAge:     60,    //days	保留60天
		Compress:   false, // 是否壓縮 便于查詢不壓縮
		LocalTime:  true,  //true使用本地時區(qū)
	}
	// 設置日志級別
	Log.SetLevel(logrus.InfoLevel)

	// 設置輸出文件名和代碼行號
	Log.SetReportCaller(true)
	// 設置日志格式為JSON格式
	Log.SetFormatter(&logrus.JSONFormatter{
		TimestampFormat: "2006-01-02 15:04:05.000", // 設置時間格式,包括毫秒
	})

	Log.SetOutput(logFile)
	// 設置同時輸出到控制臺和文件
	Log.SetOutput(io.MultiWriter(os.Stdout, logFile))
}

到此這篇關于使用golang進行http,get或postJson請求的文章就介紹到這了,更多相關go請求內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • GoLang語法之標準庫fmt.Printf的使用

    GoLang語法之標準庫fmt.Printf的使用

    fmt包實現了類似C語言printf和scanf的格式化I/O,主要分為向外輸出內容和獲取輸入內容兩大部分,本文就來介紹一下GoLang語法之標準庫fmt.Printf的使用,感興趣的可以了解下
    2023-10-10
  • Golang構建WebSocket服務器和客戶端的示例詳解

    Golang構建WebSocket服務器和客戶端的示例詳解

    這篇文章主要為大家詳細介紹了如何使用Go語言構建WebSocket服務器和客戶端,以實現雙向通信,文中的示例代碼講解詳細,需要的小伙伴可以參考一下
    2023-11-11
  • Go?語言入門學習之時間包

    Go?語言入門學習之時間包

    這篇文章主要介紹了Go?語言入門學習之時間包,GO?語言提供了???time??包來測量和顯示時間,下文關于GO時間包的相關介紹需要的小伙伴可以參考一下
    2022-04-04
  • golang切片初始化的使用示例

    golang切片初始化的使用示例

    Go語言中,切片可通過直接初始化、數組初始化、切片表達式等多種方法進行初始化,這些方式提供了靈活的數據管理方式,適合不同的編程需求和場景,感興趣的可以了解一下
    2024-10-10
  • Go語言新寵:pdqsort排序算法的完美打造

    Go語言新寵:pdqsort排序算法的完美打造

    pdqsort是一種新的排序算法,特別適用于Go語言,它是由Go語言團隊開發(fā)的,旨在提供高效且穩(wěn)定的排序算法,pdqsort采用了一種分治的策略,將數組分成小塊進行排序,然后再合并這些塊,需要的朋友可以參考下
    2023-10-10
  • golang通過gorm操作sqlite設置主鍵自增的步驟

    golang通過gorm操作sqlite設置主鍵自增的步驟

    這篇文章主要介紹了golang通過gorm操作sqlite設置主鍵自增的詳細步驟,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-09-09
  • Go語言學習otns示例分析

    Go語言學習otns示例分析

    這篇文章主要為大家介紹了Go語言學習otns示例分析詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-04-04
  • Go命令行參數解析flag 包使用示例詳解

    Go命令行參數解析flag 包使用示例詳解

    這篇文章主要介紹了Go命令行參數解析flag 包使用,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2024-01-01
  • go-cqhttp權限管理系統(tǒng)的實現代碼

    go-cqhttp權限管理系統(tǒng)的實現代碼

    這篇文章主要介紹了go-cqhttp權限管理,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-09-09
  • golang常見接口限流算法的實現

    golang常見接口限流算法的實現

    本文主要介紹了golang常見接口限流算法的實現,包含固定窗口、滑動窗口、漏桶和令牌桶,具有一定的參考價值,感興趣的可以了解一下
    2025-03-03

最新評論

蓝山县| 教育| 中宁县| 芮城县| 麻栗坡县| 盘锦市| 大同市| 南投县| 沙湾县| 富民县| 仁布县| 青海省| 呼和浩特市| 兰考县| 承德市| 芷江| 乐安县| 太谷县| 新郑市| 乐业县| 嘉峪关市| 罗定市| 北宁市| 沁水县| 沙田区| 德化县| 荔浦县| SHOW| 洛南县| 荔波县| 牡丹江市| 辉县市| 辽阳市| 双柏县| 长顺县| 桐城市| 长武县| 周口市| 游戏| 卫辉市| 古丈县|