国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

TP6 對接阿里云短信接口2.0

這篇具有很好參考價值的文章主要介紹了TP6 對接阿里云短信接口2.0。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

首先下載

安裝阿里云短信SDK

composer require alibabacloud/sdk

安裝 Alibaba Cloud SDK for PHP 作為依賴項

composer require alibabacloud/darabonba-openapi

最后安裝對應(yīng)的包

composer require alibabacloud/dysmsapi-20170525?

上面3個都下載了,官方網(wǎng)站并沒有說明下載sdk,這個沒有下載,查詢資料花了幾個小時,掉坑了

這里要添加配制文件信息,阿里云的信息,包含短信的信息等。自行準(zhǔn)備?

<?php
namespace services\alisms;
use AlibabaCloud\Client\AlibabaCloud;
use AlibabaCloud\Client\Exception\ClientException;
use AlibabaCloud\Client\Exception\ServerException;
class AliSmsService
{
    /**
     * 阿里云發(fā)送短信
     * @param string $phone
     * @param int $code
     * @return bool
     * @throws ClientException
     */
    public static function sendCodeServer(string $phone, int $code) : bool {
        if(empty($phone) || empty($code)){
            return false;
        }
        AlibabaCloud::accessKeyClient(config("aliyun.access_key_id"), config("aliyun.access_secret"))
            ->regionId(config("aliyun.region_id"))
            ->asDefaultClient();
        $templateParam = [
            "code" => $code
        ];
        try {
            $result = AlibabaCloud::rpc()
                ->product('Dysmsapi')
                // ->scheme('https') // https | http
                ->version('2017-05-25')
                ->action('SendSms')
                ->method('POST')
                ->host(config("aliyun.host"))
                ->options([
                    'query' => [
                        'RegionId' => config("aliyun.region_id"),
                        'PhoneNumbers' => $phone,
                        'SignName' => config("aliyun.sign_name"),
                        'TemplateCode' => config("aliyun.template_code"),
                        'TemplateParam' => json_encode($templateParam),
                    ],
                ])
                ->request();
//            print_r($result->toArray());
        } catch (ClientException $e) {
            return false;
            // echo $e->getErrorMessage() . PHP_EOL;
        } catch (ServerException $e) {
            return false;
            // echo $e->getErrorMessage() . PHP_EOL;
        }
        return true;
    }


      function sendCode( string  $phone) : bool {
        $code = rand(100000, 999999);
        $sms = self::sendCodeServer($phone, $code);
        if($sms){
            // 需要記錄redis及失效時間1分鐘
        }
        return true;
    }


}

這是控制器代碼?

<?php


namespace app\api\controller;

/**
 * 發(fā)送短信
 * Class Code
 * @package app\api\controller
 */
use services\alisms\AliSmsService;
class Code
{

    public function send_code(){

        $phone=input('phone');
        if (empty($phone)){
            return error_json('手機(jī)號碼不能為空');
        }
        /*try {
            validate(User::class)->scene("send_code")->check($data);
        }catch (ValidateException $e){
            return show(config("status.error"), $e->getError());
        }*/
        if($this->getAliSmsService()->sendCode($phone)){
            return success_json("發(fā)送驗證碼成功");
        }
        return error_json("發(fā)送驗證碼失敗");
    }

    function getAliSmsService(){
        return app(AliSmsService::class);
    }


}

bug

部署到服務(wù)器上的阿里云SDK會報錯,如下

這是報錯信息 Class 'AlibabaCloud\Client\AlibabaCloud' not found? 代碼里已經(jīng)引用了,但是會報錯,測試發(fā)現(xiàn),原來是阿里云SDK造成的,昨天修復(fù)好了,第二天又出現(xiàn)同樣的問題,我先把解決方法給大家看一看

TP6 對接阿里云短信接口2.0,阿里云,云計算

?代碼中引用的,如圖下

TP6 對接阿里云短信接口2.0,阿里云,云計算

解決方案如下,直接更新阿里云SDK

?文章來源地址http://www.zghlxwxcb.cn/news/detail-565075.html

需要用composer安裝

1.切換阿里云鏡像

composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

2.安裝阿里云SDK

composer require alibabacloud/sdk
?

?

到了這里,關(guān)于TP6 對接阿里云短信接口2.0的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • tp6 RabbitMQ

    1、composer 安裝 AMQP 擴(kuò)展 2、RabbitMQ 配置 ?在 config 目錄下創(chuàng)建 rabbitmq.php 文件 3、生產(chǎn)者代碼 app目錄下創(chuàng)建Producer.php 4、消費者代碼 app目錄下創(chuàng)建 Consumer.php 5、創(chuàng)建自定義命令 在項目跟目錄執(zhí)行以下命令,會自動生成 在 command 目錄生成 Consumer 控制器? config/console.php 代碼增加

    2024年02月13日
    瀏覽(104)
  • tp6 redirect用法

    一.響應(yīng)操作 1. 響應(yīng)輸出,有好幾種:包括 return、json()和 view()等等; 2. 默認(rèn)輸出方式是以 html 格式輸出,如果你發(fā)起 json 請求,則輸出 json; 3. 而背后是 response 對象,可以用 response()輸出達(dá)到相同的效果; return response($data); 4. 使用 response()方法可以設(shè)置第二參數(shù),狀態(tài)碼,

    2024年02月11日
    瀏覽(99)
  • TP6 開啟關(guān)閉debug

    TP6 開啟關(guān)閉debug

    config 不起作用,還得來這里改: 或者單個方法里加:

    2024年02月10日
    瀏覽(99)
  • 阿里云短信發(fā)送接口實現(xiàn)

    阿里云短信發(fā)送接口實現(xiàn)

    使用阿里云短信接口發(fā)送驗證碼 springboot 工程引入web 引入 lombok 關(guān)鍵代碼引入 啟動項目,訪問接口,短信發(fā)送成功!

    2024年02月11日
    瀏覽(18)
  • tp6安裝并使用rabbitMQ

    tp6安裝并使用rabbitMQ

    最近因為業(yè)務(wù)需要,要用到MQ就去研究了一下,說實話,安裝環(huán)境給我搞自閉了,大概是我太菜 剛開始使用yum換源,各種安裝卸載始終找不到自己要用的版本,后來全部卸載,下載安裝包 編譯安裝解百憂 我用的是erlang 25.3?的版本,MQ使用的是3.11.3的版本,符合官方要求,這里的版本是有強(qiáng)

    2024年02月08日
    瀏覽(101)
  • tp6 v3微信退款

    調(diào)用

    2024年02月13日
    瀏覽(97)
  • tp6用redis存儲session

    tp6用redis存儲session

    隨著業(yè)務(wù)量的增加,很多時候會需要共享session的情況。共享session,其實就是說多臺服務(wù)器共用一個session,或者是說一個主域跟多個子域之間共用一個session。工作中用tp也多一些,那么,我就用tp6來給大家講解一下。 在共享session,我們需要用到redis。這兒我假設(shè)大家都能讀懂

    2024年02月08日
    瀏覽(107)
  • 詳解dedecms使用整合阿里大魚短信接口進(jìn)行短信發(fā)送的教程

    阿里大魚雖免費,但不足的是內(nèi)容、簽名什么都要進(jìn)行審核,且短信內(nèi)容必須以模版方式進(jìn)行調(diào)用,不能根據(jù)自己的需求隨意發(fā)送, 接下介紹下阿里大魚免費短信具體實現(xiàn)方法,該方法php程序可通用。 首先要去阿里大魚下載sdk,引用其中5個基礎(chǔ)文件即可,然后進(jìn)入阿里大魚

    2024年02月02日
    瀏覽(23)
  • tp6 rules內(nèi)置驗證規(guī)則thinkphp

    1、驗證某個字段必須:‘name’=‘require’ 2、驗證某個字段的值是否為純數(shù)字:‘num’=‘number’ 3、驗證某個字段的值是否為整數(shù):‘num’=‘integer’ 4、驗證某個字段的值是否為浮點數(shù)字:‘num’=‘float’ 5、驗證某個字段的值是否為布爾值:‘num’=‘boolean’ 6、驗證某個字

    2024年04月28日
    瀏覽(102)
  • 在阿里云請求發(fā)短信接口去掉證書驗證

    composer require alibabacloud/dysmsapi-20170525 2.0.23 ? cURL error 60: SSL certificate problem: unable to get local issuer certificate (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) for https://dysmsapi.aliyuncs.com/?PhoneNumbers= 兩種方法 第一個直接關(guān)閉驗證 vendorguzzlehttpguzzlesrcHandlerCurlFactory.php 362行 $conf[CURLOPT_S

    2024年02月10日
    瀏覽(19)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包