小编Chr*_*her的帖子

结构命名约定

我在一个包中有一些结构,它们进行简单的财务API调用,一个实现对API的请求,一个存储响应.

我想知道分别命名结构"请求"和"响应"是否合适,或者我应该在主题/包之前添加"FinanceRequest"和"FinanceResponse"?或者通过使用finance.FinanceRequest(财务词使用两次)使外部调用多余?

寻找关于此事的想法(golang惯例/偏好)......

样品:

package finance

type Request struct {
//...
}

type Response struct {
//...
} 

func DoSomething(r *Request) (*Response, error) {
//...
}
Run Code Online (Sandbox Code Playgroud)

要么

package finance

type FinanceRequest struct {
//...
}

type FinanceResponse struct {
//...
} 

func DoSomething(r *FinanceRequest) (*FinanceResponse, error) {
//...
}
Run Code Online (Sandbox Code Playgroud)

naming-conventions go

4
推荐指数
1
解决办法
5179
查看次数

无法让Oauth2(Twitter)工作 - 返回无效令牌

所以我是Go的新手,所以请原谅我的无知.我正在尝试使用oauth2对twitter进行一个简单的REST API调用,以进行"仅应用程序"调用,但我不断将"无效或过期令牌"作为错误返回.

有人有设置这样的东西的经验吗?

响应是:{"errors":[{"code":89,"message":"令牌无效或过期."}]}

package main

import "fmt"
import "encoding/base64"
import "io/ioutil"
import "time"
import "golang.org/x/oauth2"

func main() {
    config := &oauth2.Config{
        Endpoint: oauth2.Endpoint{
            AuthURL: "https://api.twitter.com/oauth2/token",
            TokenURL: "https://api.twitter.com/oauth/request_token",
        },
    }
    accessToken := base64.StdEncoding.EncodeToString([]byte("{Consumer Key (API Key)}:{Consumer Secret (API Secret)}"));
    token := &oauth2.Token{
        AccessToken: accessToken, 
        Expiry: time.Now().Add(time.Duration(24)*time.Hour)
    }
    httpClient := config.Client(oauth2.NoContext, token)
    resp, err := httpClient.Get("https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=google")
    if (err != nil) {
        fmt.Printf("Error: %s", err)
    }
    defer resp.Body.Close();
    body, err :=  ioutil.ReadAll(resp.Body);
    if (err != nil) {
        fmt.Printf("Error: %s", err)
    }
    fmt.Printf("Access …
Run Code Online (Sandbox Code Playgroud)

go oauth-2.0 twitter-oauth

3
推荐指数
1
解决办法
578
查看次数

标签 统计

go ×2

naming-conventions ×1

oauth-2.0 ×1

twitter-oauth ×1