【至急】guzzleでの外部APIへのPOST送信について
最近PHPなどを触り始めたので、勉強しろと思われる方もいらっしゃると思いますが、
調べたり色々な方法を試しても解決しなかったため質問させて頂きます。
初学者故、文中に不適切な表現やわかりづらい部分などありましたら申し訳ございません。
内容としましては、自分が務めている会社で既存のページから
外部APIを呼び出して支払登録をするプログラムを書いています。
guzzleでHTTPリクエストを送信して(定められたパラメーターをPOST送信する)
返却された情報を元に次の処理に進むという流れになりますが、ここでエラーが発生しました。
発生している問題・エラーメッセージ
PHP Fatal error: Call to undefined method GuzzleHttp\Client::request() in /Applications/MAMP/htdocs/jpack/jpack.info/public/index.php on line 146 //↓下記の一行目に対してエラーが出ています。 $response = $client->request('POST','https://***/************',[ 'form_params' =>[ 'ShopID' =>'xxxxxxxxx', 'ShopPass' => 'yyyyyyyy', 'OrderID' => '2222', 'Amount' => 2300, ] ]);
該当のソースコード
php
1require '../vendor/autoload.php'; 2 3use GuzzleHttp; 4use GuzzleHttp\Client; 5use GuzzleHttp\Request; 6use GuzzleHttp\Subscriber\Oauth\Oauth1; 7 8 $entryDay = date('Ymd'); 9 10 function makeRandStr($length = 8) { 11 static $chars; 12 $str = ''; 13 if (!$chars) { 14 $chars = array_flip(array_merge( 15 range('a', 'z'),range('0', '9') 16 )); 17 } 18 for ($i = 0; $i < $length; ++$i) { 19 $str .= array_rand($chars); 20 } 21 $OrderID = $entryDay.$str; 22 } 23 24 $client = new GuzzleHttp\Client(); 25 26 $response = $client->request('POST','https://***/************',[ 27 'form_params' =>[ 28 'ShopID' =>'xxxxxxxxx', 29 'ShopPass' => 'yyyyyyyy', 30 'OrderID' => '2222', 31 'Amount' => 2300, 32 ] 33 ]); 34 35 exit('success');//ここでエラーが発生するためここまで処理が走っているか確認のために入れています。 36 37$app->run();
試したこと
色々調べて参考コードなども試させて頂きましたが、ダメでした。
自分がほとんどPHPもguzzleも(slimも)触ったことないので、根本的に何かが抜け落ちている可能性も十分にあると思いますが、上記エラー内容に関する解決方法を見つけることができませんでした。
補足情報(FW/ツールのバージョンなど)
guzzleは5.3.0
slimは2.6.2
を利用しています。
回答1件
あなたの回答
tips
プレビュー