[golang]-根據json中的某個key的值輸出對應的id
導語:有一段json 如下 ,想根據傳入的username的值匹配到對應的id。 對應功能是傳入username,找到對應的id,刪除對應的使用者。
思路是 迴圈遍歷這個陣列,然後判斷 看看username是否等於輸入的username,如果等於輸出對應索引的id。
直接上程式碼
package api
import (
"encoding/json"
"fmt"
"github.com/astaxie/beego"
)
type TestController struct {
BaseController
}
type Person struct {
Id int
// Name string
Username string
}
func (c *TestController) Get() {
var jsonBlob = []byte(`[
{"id":12,"name":"阿斯頓2","username":"asidun2"},
{"id":11,"name":"阿斯頓","username":"asidun"},
{"id":10,"name":"阿狗","username":"agou"},
{"id":9,"name":"阿貓","username":"amao"},
{"id":8,"name":"GitLab Alert Bot","username":"alert-bot"},
{"id":1,"name":"Administrator","username":"root"}
]`)
var person []Person
err := json.Unmarshal(jsonBlob, &person)
if err != nil {
fmt.Println("error:", err)
}
beego.Info("jq")
fmt.Printf("%+v", person)
fmt.Printf("out type:%T\n", person)
beego.Info("jq")
// beego.Info("jq")
// beego.Info(jq)
for _, v := range person {
// beego.Info(v)
beego.Info(v.Id, v.Username)
if v.Username != "asidun" {
beego.Info("使用者名稱不匹配", v.Username)
} else {
beego.Info("使用者名稱匹配成功", v.Username)
}
fmt.Printf("out type:%T\n", v)
}
c.Ctx.WriteString("content string")
}
直接請求http://localhost:8080/api/test
參考
https://blog.csdn.net/hp_cpp/article/details/101058472
相關文章
- Java : List中 根據map的某個key去重Java
- 快速獲取json鍵值對的key名和快速根據value分組JSON
- jquery 根據id去找 json中list的資料jQueryJSON
- 「Excel技巧」Excel中根據某列的值去彙總另外一列的值Excel
- JAVA裡List集合中的物件根據物件的某個屬性值降序或者升序排序Java物件排序
- C語言輸入一個數輸出對應的值C語言
- java中Map根據Map的value取keyJava
- 根據給定的字串,修改一個多層巢狀物件對應的屬性值字串巢狀物件
- SQL Server中根據某個欄位,ID欄位自動增長的實現SQLServer
- 騰訊面試題:根據上排給出的十個數,在其下排填出對應的十個數。面試題
- js物件陣列(JSON) 根據某個共同欄位 分組物件陣列JSON
- js根據checkbox的選中轉態輸出整行內容JS
- IIS7根據PID查詢對應的站點
- golang將切片或陣列根據某個欄位進行分組Golang陣列
- PHP 如何根據鍵值刪除一個陣列中的元素PHP陣列
- js根據不同的時間段輸出不同的語句JS
- Flutter之根據執行的platform顯示對應風格的widgetFlutterPlatform
- PHP 多維陣列排序-按某個 key 的值PHP陣列排序
- 輸入一個ASCII碼,輸出對應的字元ASCII字元
- 演算法題24 根據上排給出十個數,在其下排填出對應的十個數演算法
- 獲取json串裡的某個屬性值JSON
- 如何根據索引葉塊裡的rowid資訊找到對應的資料行索引
- 根據陣列的值刪除元素陣列
- Laravel ORM 中,根據關聯查詢的欄位值,對主查詢排名LaravelORM
- 根據字典中值得大小,對字典中的項排序排序
- 二維陣列根據某個欄位排序陣列排序
- Linux 怎麼根據程式號,找對應的程式Linux
- 物件陣列 根據key 把一樣的push到一個陣列物件陣列
- 獲取母字串中某個子字串的某個確定的index值字串Index
- oracle ebs 根據請求id找到對應trace 檔案Oracle
- Json序列化在golang中的應用JSONGolang
- c語言輸出100!的數值中的0的個數C語言
- Golang中的格式化時間輸出Golang
- mongodb查詢資料庫中某個欄位中的值包含某個字串的方法MongoDB資料庫字串
- js陣列操作——物件陣列根據某個相同的欄位分組JS陣列物件
- PHP二維陣列根據某個欄位排序PHP陣列排序
- 根據Golang定義的介面生成proto檔案Golang
- 根據需要的圖表型別選擇echarts對應的series型別型別Echarts