親愛なるstackoverflowser、
Coinbase 統合を使用して Electron アプリを構築しようとしています。
まず、サーバー (NodeJS) を OAuth2 で動作させます。
code
すべてがうまく機能しますが、指示された投稿リクエストで をに変更したい場合access token
、次のエラーが表示されます。
{
error: "invalid_request",
error_description: "The request is missing a required parameter, includes an unsupported parameter value, or is otherwise malformed."
}
有効な API URIに既にhttps://localhost:3000/auth/coinbase/callback
andを追加しました。https://localhost:3000/profile
私は数時間後にそれを理解することに成功しませんでした.
私のサーバーはこれです:
var express = require('express');
var app = express();
var fs = require('fs')
var https = require('https');
var coinbase = require('coinbase')
var request = require('request');
var options = {
key: fs.readFileSync('./ssl/coinbase.dev.key'),
cert: fs.readFileSync('./ssl/coinbase.dev.crt'),
};
var client_id = 'gues it'
var client_secret = 'gues it'
app.use(express.static('static'));
app.get('/login/coinbase', function(req, res) {
res.redirect('https://www.coinbase.com/oauth/authorize?response_type=code&redirect_uri=https://localhost:3000/auth/coinbase/callback&client_id=' + client_id + '&scope=wallet:user:read,wallet:accounts:read')
})
app.get('/auth/coinbase/callback', function(req, res) {
var data = {
client_id: client_id,
client_secret: client_secret,
grant_type: 'authorization_code',
code: req.query.code,
redirect_uri: 'https://localhost:3000/profile'
}
request.post(
'https://api.coinbase.com/oauth/token', data, function (error, response, body) {
console.log(body)
res.send(body)
}
);
})
app.get('/', function(req, res) {
res.send('home')
})
app.get('/profile', function(req, res) {
res.send('profile')
})
var server = https.createServer(options, app);
server.listen(3000)
前もって感謝します、
テオ
[編集] Coinbase の開発者に連絡したところ、Coinbase を使用した OAuth の NodeJS の例がないことに驚いたので、彼らはそれをロードマップに追加しました。