koki0615
@koki0615

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

phpで三菱UFJ銀行のapiを叩こうとしているのですが、エラーが起きてしまいます。

解決したいこと

個人API体験コースにおいて、phpで三菱UFJ銀行のapiを叩こうとしてます。
ですが、エラーが起きてしまいます。
解決方法を教えていただきたいです。

発生している問題・エラー

cURL Error #:SSL certificate problem: unable to get local issuer certificate

該当するソースコード

<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://developer.api.bk.mufg.jp/btmu/retail/trial/v2/me/accounts/",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => [
    "Accept: REPLACE_THIS_VALUE",
    "X-BTMU-Seq-No: REPLACE_THIS_VALUE",
    "X-IBM-Client-Id: REPLACE_THIS_KEY",
    "accept: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}

?>

上のコードはサンプルコードをコピペしています。

CURLOPT_HTTPHEADER には以下の様に代入しました。
"Accept: applicatio/json",
"X-BTMU-Seq-No: 20220807-kouki12345678912",
"X-IBM-Client-Id: 実際に取得したクライアントID",
"accept: application/json"

他サイトのapiは叩けるので、curlが読み込めていないわけではないと思います。

疑問に思っていること

・Acceptとaccept で2つある理由が分かりません。
・値が取得できない理由を教えて頂きたいです。

0

2Answer

エラーについてはエラーメッセージでググれば解決策が出てくるのでそちらを参照してもらうとして、

・Acceptとaccept で2つある理由が分かりません。

ドキュメントのミスだと思います。 HTTP ヘッダフィールド名は大文字小文字を区別しない仕様なので同じヘッダを重複して指定していることになりますが、そうしても意味はありません。

・値が取得できない理由を教えて頂きたいです。

cURL のエラーが原因です。

0Like

Comments

  1. @koki0615

    Questioner

    ありがとうございます。

"Accept: applicatino/json",

applicationではなくapplicatino(末尾2文字、onが逆)になっているのは質問投稿の際の打ち間違いでしょうか。

0Like

Comments

  1. @koki0615

    Questioner

    質問投稿の際の打ち間違いでしたので修正させていただきました。
    ありがとうございます。

Your answer might help someone💌