PHPサンプル使用説明書
このサンプルはPHPプログラミング言語に対応しており、すべてのOpenAPIインターフェースを呼び出すことができます。サンプルは統合のプロセスをカプセル化しており、支払いゲートウェイAPIを呼び出すための署名の追加と検証が含まれています。これはあくまで例であり、すべてのプログラミング環境に適していることは保証しません。APIを呼び出す方法を示すだけのものです。このコードを参考にして、自分のプログラムを作成することができます。
使用条件
PHP 5.5以上の開発環境に対応しています。
ダウンロードリンク
使用手順
1. 依存関係を追加し、「Composer」を使用して以下のパッケージをダウンロードします
{
"require": {
"ext-json": "*",
"ext-openssl": "*",
"ext-curl": "*"
}
}
'ext-curlL' is used for packets sent over the HTTP network, 'ext-json' parses and processes JSON packets, and 'ext-openssl' is used for RSA signature calculation packets.
2. GitHubのサンプルコードを参照し、プログラムを作成してください。以下は主要なコードです。
// 1. Global parameter settings
$appRsaPrivateKeyPem = "<YOUR APP RSA PRIVATE KEY>";
$gatewayRsaPublicKeyPem = "<YOUR GATEWAY RSA PUBLIC KEY>";
$gatewayUrl = "<YOUR GATEWAY URL>";
$appId = "<YOUR APP ID>";
// 2. Set parameters
// Common parameters
$parameters["app_id"] = $appId;
$parameters["charset"] = "UTF-8";
$parameters["format"] = "JSON";
$parameters["sign_type"] = "RSA2";
$parameters["version"] = "1.0";
$parameters["timestamp"] = getMillisecond();
$parameters["method"] = "order.query";
// API owned parameters
$parameters["merchant_no"] = "312100000164";
$parameters["merchant_order_no"] = "TEST_1685946062143";
// 3. Build a string to be signed
$stringToBeSigned = buildToBeSignString($parameters);
echo "StringToBeSigned : " . $stringToBeSigned;
echo "</br></br>";
// 4. Calculate signature
$sign = generateSign($stringToBeSigned, $appRsaPrivateKeyPem);
$parameters["sign"] = $sign;
// 5. Send HTTP request
$jsonString = json_encode($parameters);
echo "Request to gateway[" . $gatewayUrl . "] send data -->> " . $jsonString;
echo "</br></br>";
$responseStr = json_post($gatewayUrl, $jsonString);
echo "Response from gateway[" . $gatewayUrl . "] receive data <<-- " . $responseStr;
echo "</br></br>";
// 6. Verify the signature of the response message
$respObject = json_decode($responseStr, true);
$respStringToBeSigned = buildToBeSignString($respObject);
echo "RespStringToBeSigned : " . $respStringToBeSigned;
echo "</br></br>";
$respSignature = $respObject["sign"];
$verified = verify($respStringToBeSigned, $respSignature, $gatewayRsaPublicKeyPem);
echo "SignVerifyResult : " . $verified;
echo "</br></br>";