go開(kāi)源項(xiàng)目用戶名密碼驗(yàn)證的邏輯鬼才寫(xiě)法
引言
這兩天在做微服務(wù)上云的事,之前一直是本地運(yùn)行,后來(lái)在服務(wù)器搭建了生產(chǎn)環(huán)境集群。上云時(shí)出現(xiàn)了一些幺蛾子
云上的服務(wù)都需要身份驗(yàn)證的,沒(méi)有專用網(wǎng)關(guān)的話,至少也要設(shè)置 basicAuth(用戶名+密碼的方式)
今天使用 Golang 知名項(xiàng)目 Viper 連接遠(yuǎn)端配置中心 Consul 的時(shí)候發(fā)現(xiàn)怎么連接都不行。在不使用密碼的情況下代碼應(yīng)該是這樣子的

按理說(shuō),basicAuth 的話只需要在 URL 那里使用 username:password 就可以了,例如:
username:password@consul.domaini.com
但這么填寫(xiě)的話,就會(huì)出現(xiàn)連接不上的情況,真的坑。
于是我順著網(wǎng)線一路查看代碼,閱讀到關(guān)鍵位置

原來(lái)它并不是讓開(kāi)發(fā)者通過(guò)常規(guī)的 URL 方式設(shè)置用戶名密碼,也不是讓開(kāi)發(fā)者填入用戶名密碼參數(shù),而是從本地環(huán)境變量里面取,真邏輯鬼才 ~
正確的寫(xiě)法應(yīng)該是下面這樣

如果沒(méi)有跟著網(wǎng)線找的話,真的會(huì)被它尬死,放一下它的其他代碼

重要的是,它的文檔 github.com/spf13/viper 里面并沒(méi)有提及這些內(nèi)容
最后補(bǔ)一下,很多人說(shuō)國(guó)內(nèi)程序員差 、國(guó)內(nèi)程序員沒(méi)有創(chuàng)造力 、外國(guó)程序員就是流批。說(shuō)實(shí)在的,我們只是沒(méi)有那么多時(shí)間(都是加班作的),英語(yǔ)也沒(méi)那么好。要不然哪里還會(huì)有這些瞎編的說(shuō)法,你覺(jué)得呢?
以上就是go開(kāi)源項(xiàng)目中邏輯鬼才寫(xiě)法的詳細(xì)內(nèi)容,更多關(guān)于go開(kāi)源邏輯代碼的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Golang中Set類型的實(shí)現(xiàn)方法示例詳解
這篇文章主要給大家介紹了關(guān)于Golang中Set類型實(shí)現(xiàn)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2017-09-09
Golang跨平臺(tái)GUI框架Fyne的使用教程詳解
Go 官方?jīng)]有提供標(biāo)準(zhǔn)的 GUI 框架,在 Go 實(shí)現(xiàn)的幾個(gè) GUI 庫(kù)中,Fyne 算是最出色的,它有著簡(jiǎn)潔的API、支持跨平臺(tái)能力,且高度可擴(kuò)展,下面我們就來(lái)看看它的具體使用吧2024-03-03
讓go程序以后臺(tái)進(jìn)程或daemon方式運(yùn)行方法探究
本文探討了如何通過(guò)Go代碼實(shí)現(xiàn)在后臺(tái)運(yùn)行的程序,最近我用Go語(yǔ)言開(kāi)發(fā)了一個(gè)WebSocket服務(wù),我希望它能在后臺(tái)運(yùn)行,并在異常退出時(shí)自動(dòng)重新啟動(dòng),我的整體思路是將程序轉(zhuǎn)為后臺(tái)進(jìn)程,也就是守護(hù)進(jìn)程(daemon)2024-01-01
一文帶你揭秘Go中new()和make()函數(shù)的區(qū)別和用途
Go(或 Golang)是一種現(xiàn)代、靜態(tài)類型、編譯型的編程語(yǔ)言,專為構(gòu)建可擴(kuò)展、并發(fā)和高效的軟件而設(shè)計(jì),它提供了各種內(nèi)置的函數(shù)和特性,幫助開(kāi)發(fā)人員編寫(xiě)簡(jiǎn)潔高效的代碼,在本博客文章中,我們將探討 new() 和 make() 函數(shù)之間的區(qū)別,了解何時(shí)以及如何有效地使用它們2023-10-10
詳解go語(yǔ)言單鏈表及其常用方法的實(shí)現(xiàn)
這篇文章主要介紹了詳解go語(yǔ)言單鏈表及其常用方法的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11
Golang?流水線設(shè)計(jì)模式實(shí)踐示例詳解
這篇文章主要為大家介紹了Golang?流水線設(shè)計(jì)模式實(shí)踐示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12

