私はR
を使用して、次の問題を取得GDAXをヒットしようとしています。 httr
を使用して問題を解決するにはどうすればよいですか。R HTTR GETリクエスト400エラーGDAX
Response [https://api-public.sandbox.gdax.com/accounts]
Date: 2017-12-07 20:30
Status: 400
Content-Type: application/json; charset=utf-8
Size: 53 B
以下は私のコードです。しかし、私は、私は次のコードを使用して応答内容を取得することができていますRCurl
を使用する場合は
library(digest)
library(httr)
library(RCurl) # for base64Decode
url <- "https://api-public.sandbox.gdax.com/accounts"
secret <- # API secret from GDAX sandbox
api.key <- # API key from GDAX sandbox
passphrase <- # API passphrase from GDAX sandbox
timestamp <- format(as.numeric(Sys.time()), digits=13) # create nonce
key <- base64Decode(secret, mode="raw") # encode api secret
what <- paste0(timestamp, "GET", req.url)
sign <- base64Encode(hmac(key, what, algo="sha256", raw=TRUE))
connector <- list(url = url, nonce = timestamp, signature = sign))
GET(url=connector$url,
add_headers(
'CB-ACCESS-KEY'=api.key,
'CB-ACCESS-SIGN'=connector$signature,
'CB-ACCESS-TIMESTAMP'=connector$nonce,
'CB-ACCESS-PASSPHRASE'=passphrase,
'Content-Type'='application/json'
)
)
問題だけRCurl
(付録に提供されているコード)とhttr
パッケージとないと存在していることに注意してください。
httpheader <- list('CB-ACCESS-KEY'=api.key,
'CB-ACCESS-SIGN'=sign,
'CB-ACCESS-TIMESTAMP'=timestamp,
'CB-ACCESS-PASSPHRASE'=passphrase,
'Content-Type'='application/json')
connector <- list(url = url, header = httpheader)
getURLContent(url = connector$url,
curl=getCurlHandle(useragent="R"),
httpheader=connector$header)
両方のコードセットを使用してhttps://requestb.in/のようなサイトを指し示すようにしてください。実際に何がサーバーに送信されているのか分かります。 – MrFlick
'base64Decode'関数はどこから来ますか? – MrFlick
'RCurl'だが、それは良い出てくる。私はそれが「ダイジェスト」機能であったという印象を受けました。 'httr'を使用して接続が確立されたら、これに取り組む必要があります。 – Drj