(已解決)阿里雲部署項目 阿里大於短信功能失效


  這兩天在阿里雲部署項目,項目主體是springboot2.2 + vue2.6.10,本地使用阿里大於短信功能正常,打成jar包,docker鏡像,使用阿里雲容器服務部署后,短信功能失效。

  我們使用的阿里雲服務區域是上海。(很重要,短信設置跟區域有關)

  本地配置:

// 依賴部分
<dependency>
    <groupId>com.aliyun</groupId>
    <artifactId>aliyun-java-sdk-core</artifactId>
    <version>4.1.0</version>
</dependency>
<dependency>
    <groupId>com.aliyun</groupId>
    <artifactId>aliyun-java-sdk-dysmsapi</artifactId>
    <version>1.1.0</version>
</dependency>

// 代碼部分(關鍵的部分)
CommonRequest request = new CommonRequest();
request.setDomain(“dysmsapi.aliyuncs.com”);
request.putQueryParameter("RegionId", "cn-hangzhou");

  本地運行發送短信功能正常,一旦部署到阿里雲,就出現如下錯誤:(請求超時)

  com.aliyuncs.exceptions.ClientException: SDK.ServerUnreachable : Server unreachable: java.net.ConnectException: Connection timed out (Connection timed out) 

  經多次嘗試,該問題得以解決:

  1、需要根據你的阿里雲服務區域選擇阿里大於短信服務內網IP

  https://help.aliyun.com/document_detail/68360.html?spm=a2c4g.11186623.6.699.1c0137edsk3wUh

  如我的服務區域是上海,我就選擇上海的內網IP:dysmsapi-vpc.cn-shanghai.aliyuncs.com

  

 

   2、修改代碼如下:

CommonRequest request = new CommonRequest();
// 設置區域為對應的內網地址
request.setDomain(“dysmsapi-vpc.cn-shanghai.aliyuncs.com”);
// 改為上海
request.putQueryParameter("RegionId", "cn-shanghai");

  按照上述方式修改后,短息發送成功。

  在問題處理過程中,網上資料並不多,有可能是個例,忘參考使用。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM