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

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

Aerospike Golang 如何使用 POLICY_KEY_SEND?

Aerospike Golang 如何使用 POLICY_KEY_SEND?

Go
慕虎7371278 2022-11-28 16:50:40
我正在嘗試使用 golang 使用 PK 記錄,默認策略阻止 PK 顯示,因此我需要使用策略 POLICY_KEY_SEND。我可以使用 PHP 制定此政策,但我不知道如何在 golang aerospike 庫中使用它,這是我的代碼(Aerospike 和 PHP)Golang(不知道如何放置策略 POLICY_KEY_SEND)package mainimport "fmt"import aero "github.com/aerospike/aerospike-client-go"func main() {        client, err := aero.NewClientWithPolicyAndHost(aero.NewClientPolicy(),         aero.NewHost("192.168.7.241", 3000),         aero.NewHost("192.168.7.243", 3000),         aero.NewHost("192.168.7.244", 3000),         aero.NewHost("192.168.7.245", 3000),    )        if err != nil {        fmt.Println("AEROSPIKE CON ERR :",nil)    } else {        fmt.Println("SUCCESS AEROSPIKE")        namespace := "test"        setName := "test_golang_set"        key,err := aero.NewKey(namespace,setName,"ASDF1234")        if err != nil {            fmt.Println("AEROSPIKE KEY ERR :",nil)        } else {            // define some bins            bins := aero.BinMap{                "game"  : "P4", // you can pass any supported type as bin value                "genre" : "RPG",                "price" : 59.9,            }            writePolicy := aero.NewWritePolicy(0, 0)            err = client.Put(writePolicy, key, bins)                        if err != nil {                fmt.Println("AEROSPIKE PUT ERR :",nil)            } else {                fmt.Println("AEROSPIKE PUT SUCCESS")            }        }    }}PHP(使用 POLICY_KEY_SEND)<?php/*blablah connection stuff*/$name_space = "test";$sets  = "test_golang_set";$pk_sets = "HIJK4869";$key = $aeroDB->initKey($name_space,$sets,$pk_sets);$option = [    Aerospike::OPT_POLICY_KEY => Aerospike::POLICY_KEY_SEND];$bins = [    'game'   => 'ELDEN RING',    'genre'   => 'Relaxing',    'price'    => 59.9];$putStatus = $aeroDB->put($key,$bins,0,$option);if($putStatus == Aerospike::OK) {    echo "OK";} else {    echo "ERR";}
查看完整描述

1 回答

?
守著一只汪

TA貢獻1872條經驗 獲得超4個贊

嘗試添加:

writePolicy.SendKey = true

打電話前:

err = client.Put(writePolicy, key, bins)

根據 Aerospike Go 客戶端文檔:SendKey 選項是BasePolicy(默認為 SendKey = false)的一部分,它是WritePolicy.

https://pkg.go.dev/github.com/aerospike/aerospike-client-go#BasePolicy

 https://pkg.go.dev/github.com/aerospike/aerospike-client-go#WritePolicy


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

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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