如何修复 Ballerina 中 Twilio-Connector 中的 404 "The requested resource /2010-04-01/Accounts//SMS/Messages.json" not found 错误

How to fix 404 "The requested resource /2010-04-01/Accounts//SMS/Messages.json" not found error in Twilio-Connector in Ballerina

我正在使用 ballerina 创建客户注册休息服务,与此相关的用例是当客户成功注册时我需要向 customer.When 我使用 ballerina 中的 Twilio Connector 来发送短信我收到以下错误。

404 Not Found-:The requested resource /2010-04-01/Accounts//SMS/ 
Messages.json was not found.        

下面显示了与 Twilio 集成相关的代码,

import wso2/twilio;
twilio:Client twilioClient = new({
    accountSId: config:getAsString(TWILIO_ACCOUNT_SID),
    authToken: config:getAsString(TWILIO_AUTH_TOKEN)
});

我在 ballerina.conf 文件中包含了 Twilio-Sid 和 Auth Token,因为 well.Below 显示了我编写的通过 Twilio-connector 发送短信的函数

function sendSmsToCustomers(string mobile) returns boolean {

    boolean isSuccess= false;
    string toMobile = mobile;
    string messageBody = config:getAsString(TWILIO_MESSAGE);
    string fromMobile = config:getAsString(TWILIO_FROM_MOBILE);
    string message = messageBody;
    var response = twilioClient->sendSms(fromMobile, toMobile,  message);
   if (response is twilio:SmsResponse) {
        if (response.sid != EMPTY_STRING) {
            log:printDebug("Twilio Connector -> SMS successfully sent to " + toMobile);
            return true;
        }
    } else {
        log:printDebug("Twilio Connector -> SMS failed sent to " + toMobile);
        log:printError(<string>response.detail().message);
    }
    return isSuccess;
}

预期的输出应该是向提供的手机号码 (toMobile) 发送短信

这里的问题是 TWILIO_ACCOUNT_SID 没有从 ballerina.conf 文件中读取。 ballerina.conf 文件应具有如下配置属性,以便与您的代码匹配。

TWILIO_ACCOUNT_SID="your_account_sid"
TWILIO_AUTH_TOKEN="your_auth_token"
TWILIO_MESSAGE="your_message"
TWILIO_FROM_MOBILE="your_from_mobile_number"

我遇到了类似的问题。 我在 Twilio/Rest/Client.php 中发现了什么 构造函数需要用户名、密码和其他详细信息。

public function __construct(string $username = null, string $password = null, string $accountSid = null, string $region = null, HttpClient $httpClient = null, array $environment = null)

但是在用于库加载的Twilio.php中,它试图通过传递 SID 和 TOKEN 来创建客户端对象。

很可能,共享的库代码不正确或版本不同