亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Golang 中 url.openStream() 的等效函數

Golang 中 url.openStream() 的等效函數

Go
慕容708150 2021-11-15 20:59:03
在某個地方,您顯然有一個調用newWindowsSpecificThing(). 那應該在特定于 Windows 的文件中。如果是,那么它不可用也沒有關系。你有一些東西“檢查它是否在 Windows 上運行”這一事實暗示了if runtime.GOOS == "windows"某處的聲明。而不是擁有它,而是將整個移動if到一個在 Windows 特定文件中定義的函數中。您還需要在!windows文件中定義該函數,這很好。作為我的代碼示例,我有一個函數:func Setup() *config {    var cfg *config    // setup portable parts of cfg    return PlatformSpecificSetup(cfg)}然后我標記// +build windows了PlatformSpecificSetup()一個定義一種方式的文件,以及另一個// +build !windows定義另一種方式的標記。我從不需要檢查runtime.GOOS,也不需要處理未定義的數據類型。該config結構本身是在這些文件中定義的,所以它可以為每個平臺不同領域(只要他們同意足夠Setup())。如果我更加小心,我可以創建一個結構,如:type config struct {  // independent stuff  plat *platformConfig}然后只是platformConfig在每個平臺文件中定義,但在實踐中我發現這比它值得的麻煩更多。
查看完整描述

1 回答

?
三國紛爭

TA貢獻1804條經驗 獲得超7個贊

希望這會有所幫助:


package main


import (

    "fmt"

    "io/ioutil"

    "log"

    "net/http"

)


func Error(err error) {

    if err != nil {

        log.Fatal(err)

    }

}


func main() {

    response, err := http.Get("http://www.oracle.com/")

    Error(err)


    defer response.Body.Close()


    contents, err := ioutil.ReadAll(response.Body)

    Error(err)


    fmt.Printf("%s\n", contents)

}

更多詳情:https : //golang.org/pkg/net/http/


查看完整回答
反對 回復 2021-11-15
  • 1 回答
  • 0 關注
  • 198 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號