Реализация PHP для ACINQ / Strike API - PullRequest
0 голосов
/ 11 сентября 2018

Мне нужно реализовать следующий curl с использованием PHP.

$ curl https://api.dev.strike.acinq.co/api/v1/charges \ 
-u sk_pJDwxFxCVw5fQJhRRMpf29jReUjjN: \
-X POST \
-d amount=42000 \
-d currency="btc" \
-d description="1%20Blockaccino" 

Это то, что у меня есть.

$post=array();
$post["amount"]=4200;
$post["currency"]="btc";
$post["description"]="1%20Blockaccino";
$ch = curl_init();
curl_setopt($ch, CURLOPT_USERNAME, "sk_pJDwxFxCVw5fQJhRRMpf29jReUjjN:");
curl_setopt($ch, CURLOPT_URL, "https://api.dev.strike.acinq.co/api/v1/charges");
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
$output = curl_exec($ch);
$http = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($http==200) { 
} else {
}

Возвращает

{ "code" : 401, "message" : "authentication failed" } 

Хотя CURLOPT_USERNAME является точным.Есть ли другие проблемы, которых я не вижу?

Заранее спасибо.

Ответы [ 2 ]

0 голосов
/ 13 сентября 2018

Вот окончательное РАБОЧЕЕ решение ...

$post=array();
$post["amount"]=100000;
$post["currency"]="btc";
$post["description"]="test";
$ch = curl_init();
curl_setopt($ch, CURLOPT_USERNAME, "sk_XXXXXXXXXXXXXXXXXXXXXXXXXXXXX");
curl_setopt($ch, CURLOPT_URL, "https://api.strike.acinq.co/api/v1/charges");
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($post));
curl_setopt($ch, CURLOPT_HTTPHEADER,array("Content-Type: application/json"));   
$output = curl_exec($ch);
$http = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($http==200) { 
} else {
}
0 голосов
/ 11 сентября 2018

CURLOPT_USERNAME был добавлен в PHP 5.5.0.

Если у вас более старая версия, вы можете попробовать:

curl_setopt($ch, CURLOPT_USERPWD, "sk_pJDwxFxCVw5fQJhRRMpf29jReUjjN:");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...