2016-05-15 16 views
0

現在、Go用のSoundcloudラッパーを使用しています。ユーザーのフォロワーを印刷したいが、ポインターの問題に直面するのは初めてです。パニック:ランタイムエラー:無効なメモリアドレスまたはnilポインタ逆参照

panic: runtime error: invalid memory address or nil pointer dereference 
[signal 0xb code=0x1 addr=0x10 pc=0xc9c26] 

コード

package main 

import (
    "fmt" 
    "github.com/njasm/gosoundcloud" 
) 


func main() { 
    // callback url is optional - nil in example 
    s, _ := gosoundcloud.NewSoundcloudApi("Client_Id", "Client_Secret", nil) 
    var userID uint64 = 1 
    member, err := s.GetUser(userID) 
    if err != nil { 
       panic(err) 
    } 
    fmt.Println(member.Followers) 
} 

goroutine 1 [running]: 
panic(0x3508c0, 0xc82000a0b0) 
    /usr/local/go/src/runtime/panic.go:481 +0x3e6 
net/http.(*Client).doFollowingRedirects(0x0, 0xc8200d0000, 0x4611c8, 0x0, 0x0, 0x0) 
    /usr/local/go/src/net/http/client.go:429 +0x66 
net/http.(*Client).Do(0x0, 0xc8200d0000, 0x8, 0x0, 0x0) 
    /usr/local/go/src/net/http/client.go:188 +0xff 
github.com/njasm/gosoundcloud.(*SoundcloudApi).do(0xc8200c8720, 0xc8200d0000, 0xc820012f00, 0x0, 0x0) 
    /Users/ManuelDao/Documents/GoBot/src/github.com/njasm/gosoundcloud/soundcloud.go:217 +0x4b 
github.com/njasm/gosoundcloud.(*SoundcloudApi).Get(0xc8200c8720, 0xc820012f00, 0x22, 0x0, 0x1, 0x0, 0x0) 
    /Users/ManuelDao/Documents/GoBot/src/github.com/njasm/gosoundcloud/soundcloud.go:92 +0xe1 
github.com/njasm/gosoundcloud.(*SoundcloudApi).GetUser(0xc8200c8720, 0x1, 0x417a80, 0x0, 0x0) 
     /Users/ManuelDao/Documents/GoBot/src/github.com/njasm/gosoundcloud/soundcloud.go:276 +0xc6 
main.main() 
     /Users/ManuelDao/Documents/GoBot/src/GoBot/GoBot.go:24 +0x70 
exit status 2 

答えて

1

を構築した後、私は前にこのLIBを使用したことがありませんが、あなたが自分自身を認証するために忘れてしまったように見えるエラーを構築した後

s, _ := gosoundcloud.NewSoundcloudApi("Client_Id", "Client_Secret", nil) 
if err = s.PasswordCredentialsToken("[email protected]", "your_password"); err != nil { 
    // handle err 
} 

このようなものがありますか?

+0

実際には、データを取得するために、apiを使用してログインする必要はありません。ここにライブラリへのリンクがあります。https://godoc.org/github.com/njasm/gosoundcloud – Juanvulcano

+1

まあ、私はあなたの正確な例を試したところ、同じnilポインタエラーで失敗しました。 'PasswordCredentialsToken'でトークンを取得した後、すべて正常に動作しました。私はhttps://github.com/njasm/gosoundcloudの例をチェックしました –

+0

私はあなたのコードを差し込みました。それは私には定義されていないと私に伝えます。私はGoで比較的新しいです。どのようにエラーを処理しましたか? – Juanvulcano

関連する問題