Php 如何修复Laravel 5.8中twillio API SMS验证中的客户端错误?

Php 如何修复Laravel 5.8中twillio API SMS验证中的客户端错误?,php,laravel,api,web-services,one-time-password,Php,Laravel,Api,Web Services,One Time Password,我正在为移动应用开发人员制作web服务。我想在laravel制作OTP。我正在尝试用twillio试用短信来实现这一点。通过此链接进行此操作 您尝试的URL无效。URL中缺少帐户SID。格式应为https://api.twilio.com/2010-04-01/Accounts/{AccountSid}/Messages.json 您的案例中的代码问题。检查您是否为config('app.twilio')['twilio\u ACCOUNT\u SID']设置了值,该值似乎为空,并且您的代码

我正在为移动应用开发人员制作web服务。我想在laravel制作OTP。我正在尝试用twillio试用短信来实现这一点。通过此链接进行此操作


您尝试的URL无效。URL中缺少
帐户SID
。格式应为
https://api.twilio.com/2010-04-01/Accounts/{AccountSid}/Messages.json

您的案例中的代码问题。检查您是否为
config('app.twilio')['twilio\u ACCOUNT\u SID']
设置了值,该值似乎为空,并且您的代码没有在帖子URL中追加twilio帐户id并抛出404


在他们的

上阅读更多内容,因此在我的例子中,这是{$accountSid}/Messages.jsonI更新答案的正确方法,请查看更新的答案。
$result=$client->post('https://api.twilio.com/2010-04-01/Accounts/{AccountSid}/Messages.json',
此行不正确。应为
$result=$client->post("https://api.twilio.com/2010-04-01/Accounts/$accountSid/Messages.json“
使用问题中的当前版本更新代码。在try语句之前运行
dd(config('app.twilio')['twilio\u ACCOUNT\u SID'))
并查看您是否获得了预期的帐户sid。您是否阅读了错误消息?检查发送请求的URL。错误是:$accountSid.config('app.twilio')['twilio\u account\u sid'])中的值为空。它没有从config/app.php中获取值
    <?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

use Twilio\Jwt\ClientToken;
use GuzzleHttp\Exception\GuzzleException;
use GuzzleHttp\Client;
use phpseclib\Crypt\Random;

class SmsController extends Controller
{
  protected $code, $smsVerification;

  function __construct()
  {
    $this->smsVerification = new \App\SmsVerification();
  }

  public function store (Request $request)
  {
    $code = rand(1000,9999); // Generate Random Code
    $request['code'] = $code; // Add code in request body.
    $this->smsVerification->store($request); //call store method of model
    return $this->sendSms($request); // send and return its response
  }
  public function sendSms($request)
  {
     $accountSid = config('app.twilio')['TWILIO_ACCOUNT_SID'];
     $authToken = config('app.twilio')['TWILIO_AUTH_TOKEN'];
    try
     {
     $client = new Client(['auth' => [$accountSid, $authToken]]);
     $result = $client->post("https://api.twilio.com/2010-04-01/Accounts/$accountSid/Messages.json",
     ['form_params' => [
     'Body' => 'CODE: '. $request->code, //set message body
     'To' => $request->contact_number,
     'From' => '+12056193751' //we get this number from twilio
     ]]);
     return $result;
     }
     catch (Exception $e)
     {
     echo "Error: " . $e->getMessage();
     }
   }

}