阿里雲官網上的aliyunsdkcore
是不支持Python3的,但是在官方的Github上,有一個aliyunsdkcore-v3版本,該版本支持Python3。
但是在調用短信接口的時候,出現了aliyunsdkcore.acs_exception.exceptions.ClientException: SDK.InvalidRegionId Can not find endpoint to access.
的異常,原因是在aliyun-python-sdk-core-v3\aliyunsdkcore\endpoints.xml
中沒有把相應的<Product>
加上。
所以只需要在裏面進行添加上<Product><ProductName>Dysmsapi</ProductName><DomainName>dysmsapi.aliyuncs.com</DomainName></Product>
就可以了:
<Endpoint name="cn-hangzhou">
<RegionIds><RegionId>cn-hangzhou</RegionId></RegionIds>
<Products>
......
<Product><ProductName>Dysmsapi</ProductName><DomainName>dysmsapi.aliyuncs.com</DomainName></Product>
</Products>
</Endpoint>
如果使用其他服務出現類似的異常,都可以檢查下github下載的endpoints.xml
有沒有阿里雲官網下載的endpoints.xml
對應的<Product>
。
PS:好想吐槽阿里,一個SDK搞這麼麻煩