go語言二次認證 go語言認證考試

請教,golang中的hmac驗證應該怎樣寫

package main

成都創(chuàng)新互聯公司-專業(yè)網站定制、快速模板網站建設、高性價比武邑網站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式武邑網站制作公司更省心,省錢,快速模板網站建設找我們,業(yè)務覆蓋武邑地區(qū)。費用合理售后完善,十多年實體公司更值得信賴。

import (

"crypto/hmac"

"crypto/sha1"

"fmt"

"io"

)

func main() {

//sha1

h := sha1.New()

io.WriteString(h, "aaaaaa")

fmt.Printf("%x\n", h.Sum(nil))

//hmac ,use sha1

key := []byte("123456")

mac := hmac.New(sha1.New, key)

mac.Write([]byte("aaaaaa"))

fmt.Printf("%x\n", mac.Sum(nil))

}

GO語言(十三):使用 Go 和 Gin 開發(fā) RESTful API(下)

當客戶端在 發(fā)出POST請求時/albums,您希望將請求正文中描述的專輯添加到現有專輯數據中。

為此,您將編寫以下內容:

1、編寫代碼

a.添加代碼以將專輯數據添加到專輯列表。

在此代碼中:

1)用于Context.BindJSON 將請求正文綁定到newAlbum。

2) album將從 JSON 初始化的結構附加到albums 切片。

3)向響應添加201狀態(tài)代碼,以及表示您添加的專輯的 JSON。

b.更改您的main函數,使其包含該router.POST函數,如下所示。

在此代碼中:

1)將路徑中的POST方法與 /albumspostAlbums函數相關聯。

使用 Gin,您可以將處理程序與 HTTP 方法和路徑組合相關聯。這樣,您可以根據客戶端使用的方法將發(fā)送到單個路徑的請求單獨路由。

a.如果服務器從上一節(jié)開始仍在運行,請停止它。

b.從包含 main.go 的目錄中的命令行,運行代碼。

c.從不同的命令行窗口,用于curl向正在運行的 Web 服務發(fā)出請求。

該命令應顯示添加專輯的標題和 JSON。

d.與上一節(jié)一樣,使用curl檢索完整的專輯列表,您可以使用它來確認添加了新專輯。

該命令應顯示專輯列表。

當客戶端向 發(fā)出請求時GET /albums/[id],您希望返回 ID 與id路徑參數匹配的專輯。

為此,您將:

a.在您在上一節(jié)中添加的函數下方postAlbums,粘貼以下代碼以檢索特定專輯。

此getAlbumByID函數將提取請求路徑中的 ID,然后找到匹配的專輯。

在此代碼中:

(1)Context.Param用于從 URL 中檢索id路徑參數。當您將此處理程序映射到路徑時,您將在路徑中包含參數的占位符。

(2)循環(huán)album切片中的結構,尋找其ID 字段值與id參數值匹配的結構。如果找到,則將該album結構序列化為 JSON,并將其作為帶有200 OK HTTP 代碼的響應返回。

如上所述,實際使用中的服務可能會使用數據庫查詢來執(zhí)行此查找。

(3)如果找不到專輯,則返回 HTTP 404錯誤。

b.最后,更改您的main,使其包含對router.GET的新調用,路徑現在為/albums/:id ,如以下示例所示。

在此代碼中:

(1)將/albums/:id路徑與getAlbumByID功能相關聯。在 Gin 中,路徑中項目前面的冒號表示該項目是路徑參數。

a.如果服務器從上一節(jié)開始仍在運行,請停止它。

b.在包含 main.go 的目錄中的命令行中,運行代碼以啟動服務器。

c.從不同的命令行窗口,用于curl向正在運行的 Web 服務發(fā)出請求。

該命令應顯示您使用其 ID 的專輯的 JSON。如果找不到專輯,您將收到帶有錯誤消息的 JSON。

恭喜!您剛剛使用 Go 和 Gin 編寫了一個簡單的 RESTful Web 服務。

本節(jié)包含您使用本教程構建的應用程序的代碼。

go語言有前景嗎?

就目前來看還是很有前景,因為越來越火了,不過他的應用領域還是局限在高并發(fā)處理和網站開發(fā),畢竟是后起之秀所以在其他桌面程序領域沒那么容易普及和超越c++,找工作就不推薦學go

如何使用Go語言實現遠程執(zhí)行命令

連接包含了認證,可以使用 password 或者 sshkey 2種方式來認證。下面的示例為了簡單,使用了密碼認證的方式來完成連接。

import (

"fmt"

"time"

"golang.org/x/crypto/ssh"

當前名稱:go語言二次認證 go語言認證考試
網站路徑:http://muchs.cn/article26/ddcdijg.html

成都網站建設公司_創(chuàng)新互聯,為您提供云服務器、外貿網站建設、搜索引擎優(yōu)化、電子商務小程序開發(fā)、自適應網站

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯

外貿網站建設