私は流星のアプリを開発しています。それはうまくいきましたが、どこかで奇妙な誤りが出ました。私は私の流星の方法をすべて定義したサーバーフォルダの下にファイルを持っています。私はクライアント側からMeteor.callを使って呼び出しています。サーバ上の流星のメソッドが呼び出されていない
問題は、サーバーメソッドをもう呼び出すことができないことです。
HTMLコード:
<section class="body_section">
<form>
<div class="container">
<div class="box"> <h2 class="verify_number">Verify your phone number</h2></div>
<div class="box"> <p class="center_txt"> We will send an SMS message to verify your phone number. </p></div>
<div class="box"> <span class="isdcode">+ 91</span><input myattr="mobileNo" type="tel" class="input-txt signin" id="signin" name="mobNumber" placeholder="Mobile Number" pattern="[6789][0-9]{9}" onKeyUp="numbersonly()" value ='' required>
</div>
</div>
<footer class="signformFooter">
<div class="container">
<input type="submit" class="next_btn" id="verifyNumber" value="NEXT"/>
</div>
</footer>
</form>
</section>
はJS対応するイベントコード:
'submit form' : function(event){
event.preventDefault();
var numb = '+91' + event.target.mobNumber.value;
if(confirm('OTP would be sent to ' + numb)){
Meteor.call("sendSMS", numb, function(error, res){
if(!error){
Router.go('verifyMobile',{
mobNo : numb
});
}
else
alert(error)
});
}
}
サーバー側のコード:
sendSMS : function(mobile){
var otp = UserOTP.findOne({mobNo : mobile});
if(otp == undefined){
otp = Math.floor(Math.random()*9000) + 1000;
UserOTP.insert({
mobNo : mobile,
OTP : otp,
createdAt : new Date()
})
}
else
otp = otp.OTP;
var msg91 = require("msg91")("", "", "");
var message = '4 Digit Verification Code for kNOwDoubt ' + otp;
msg91.send(mobile, message, function(err, response){
if(err){
console.log('otp not sent to : ' + mobile + " " + err);
}
else{
console.log('otp ' + otp + ' sent to ' + mobile + ' with transactional route ' + response);
}
});
return true;
},
番目の符号に続いて
は作業罰金昨日e奇妙なことは、アプリケーションがWebブラウザ上で完全に正常に動作していることです。問題はアンドロイドでアプリを実行したときだけです(まだiOSでテストされていません)。
流星バージョン:1.5
アンドロイド上で実行するコマンド:sudoの-E流星の実行のAndroidデバイス--allow-スーパー--settingsサーバ/ settings.json
私は、私は非常に些細なを持って信じてどこかのエラー。どんな助けもありがとう。
ありがとうございます!
私はconsole.logをコードの流れをチェックするために入れ、サーバー側の 'sendSMS'は呼び出されません。 – user3807691
あなたは 'Meteor.method'ステートメントをどこで宣言しましたか?ブラウザのコンソールでエラーが発生したかどうかを確認してください。 –
私は別のマシン(PC)でアプリを走らせました。そこにはうまくいった。問題はSDKバージョンで発生しました。以前のバージョンのsdkを削除して再インストールしました。今うまく働いている – user3807691