英文:
entering custom type values in a config.json file
问题
我正在尝试使用用Go编写的这个论坛软件,它有一个配置文件,需要在main.go中看到的值。我尝试在我的本地机器上使用空字符串""
作为空字符串进行测试,但是我收到了一个错误:
json: 无法将字符串解组为类型为oauth.Credentials的Go值
所以,即使我将其部署到服务器上,我认为我也必须将凭据输入为字符串,这样也会触发错误。
假设我的API密钥和密钥如下:
key= X482xYAFG1I2RKBYR
secret = 4929390593pqI4wNMljlj4N71oyOdlWCzyNKhv4BAd4QXLvW2LF
考虑到下面的main.go
的要求,你会如何在config.json文件中输入凭据?
{
"TwitterOAuthCredentials":,
"CookieAuthKeyHexStr":"2ded82bb63514dbd6a0af42a25df235c",
"CookieEncrKeyHexStr":"4add93d1d6bb3489c9b3ab5448704068",
"AnalyticsCode":"",
"AwsAccess":"",
"AwsSecret":"",
"S3BackupBucket":"",
"S3BackupDir": ""
}
来自main.go的配置要求:
config = struct {
TwitterOAuthCredentials *oauth.Credentials
CookieAuthKeyHexStr *string
CookieEncrKeyHexStr *string
AnalyticsCode *string
AwsAccess *string
AwsSecret *string
S3BackupBucket *string
S3BackupDir *string
}{
&oauthClient.Credentials,
nil, nil,
nil,
nil, nil,
nil, nil,
}
英文:
I'm trying to use this forum software written in Go that has a config file that requires the values you see in main.go below. I tried to use an empty string ""
for the oauth credentials to play around on my local machine but I got an error
json. json: cannot unmarshal string into Go value of type oauth.Credentials
So, even if I were to deploy it on a server, I thought I would have had to enter the credentials as a string, which would trigger the error there as well.
Assuming my api key and secret were like this
key= X482xYAFG1I2RKBYR
secret = 4929390593pqI4wNMljlj4N71oyOdlWCzyNKhv4BAd4QXLvW2LF
Taking into consideration the requirements from main.go
below, how would you enter the credentials in a config.json file like this
{
"TwitterOAuthCredentials":,
"CookieAuthKeyHexStr":"2ded82bb63514dbd6a0af42a25df235c",
"CookieEncrKeyHexStr":"4add93d1d6bb3489c9b3ab5448704068",
"AnalyticsCode":"",
"AwsAccess":"",
"AwsSecret":"",
"S3BackupBucket":"",
"S3BackupDir": ""
}
config requirements from main.go
config = struct {
TwitterOAuthCredentials *oauth.Credentials
CookieAuthKeyHexStr *string
CookieEncrKeyHexStr *string
AnalyticsCode *string
AwsAccess *string
AwsSecret *string
S3BackupBucket *string
S3BackupDir *string
}{
&oauthClient.Credentials,
nil, nil,
nil,
nil, nil,
nil, nil,
}
答案1
得分: 1
如果你不想设置它,可以完全省略,它将被设置为默认值。
否则,请输入一个oauth.Credentials
的JSON表示,它包含一个Token
和一个Secret
字符串:
type Credentials struct {
Token string // 也称为消费者密钥或访问令牌。
Secret string // 也称为消费者密钥或访问令牌密钥。
}
在你的配置中,凭据应该如下所示:
"TwitterOAuthCredentials": {
"Token": "oauthtoken",
"Secret": "oauthsecret"
}
英文:
If you don't want to set it, leave it out entirely, and it will get set to the default value.
Otherwise, enter the json representation of an oauth.Credentials
, which is just a Token
and a Secret
string:
type Credentials struct {
Token string // Also known as consumer key or access token.
Secret string // Also known as consumer secret or access token secret.
}
In your config, the credentials would look like:
"TwitterOAuthCredentials": {
"Token": "oauthtoken",
"Secret": "oauthsecret"
},
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论