現在、Expressプラットフォーム、Twilio Node.js SMS API、および明らかにJavaScriptを使用してユーザーにテキストメッセージを送信しています。問題は、フロントエンドのGET変数を通してデータを送信し、バックエンドのnode.jsでそれらの値を取得するために、私が何をすべきか分かりません。Expressを使用してJavascriptからNode.jsにデータを送受信する
テスト目的のために、クリックするとテキストメッセージを固定番号に送信する簡単なボタンを作成しました。
function sms() {
xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET","http://localhost:5001", true);
xmlhttp.onreadystatechange=function(){
if (xmlhttp.readyState==4 && xmlhttp.status==200){
alert(xmlhttp.responseText);
}
}
xmlhttp.send();
}
ここでNode.jsの側面である:
var accountSid = 'ACCOUNT_SID';
var authToken = 'ACCOUNT_TOKEN';
//require the Twilio module and create a REST client
var client = require('twilio')(accountSid, authToken);
var express = require("express");
var app = express();
app.get('/',function(request,response){
var to = "TO";
var from = "FROM";
client.messages.create({
to: to,
from: from,
body: 'Another message from Twilio!',
}, function (err, message) {
console.log("message sent");
});
});
app.listen(5001);
私はアクロス来ている。ここ
はjavascriptの側面がありますSだから、それをまとめるために、私は変数(を送信したいのNode.jsからresponseTextを送信するために、それらがresponse.send("Hello World");
又は第二1 response.write("Hello again"); response.end();
を使用して 最初の1を動作させるために管理することはできません二つの方法、 from、messageなど)をHTTPリクエストで取得し、node.jsに取り込んでresponseTextを送信します。私はJSとPHPの間のAJAXリクエストに非常に満足していますが、Node.jsは私にとって初めてのことです。私は、新しいガイドを受け取り、Node.jsの中にSMSに返信する方法で、ここであなたを助けになると思い、事前
提供したコードは両方とも動作するはずですが、サーバーサイドのコードには表示されていません。どうしたの?どこにサーバー側のコードに入れましたか?あなたがリクエストをするとどうなりますか?ブラウザの開発者ツールを使ってリクエストを調べたことがありますか?それは200 OK応答を得ますか?それはあなたが期待するデータを含んでいますか?コンソールでエラーメッセージを調べましたか? (私は、ソリューションを見つけるためにGoogleにスティックするのは本当に簡単なクロスオリジンの例外があると思うだろう) – Quentin
小さなノートは、成功を通知するために何もフロントエンドに送っていない。これを行うには、単純なresponse.send()またはresponse.send( 'Received the data')を使用します。フロントエンドに伝える200. – Brant
@Quentinブラウザでリクエストを行うと200 OKレスポンスが得られますが、JSで評価するとレスポンステキストに警告することができません。コンソールログに警告メッセージは表示されません。 – Felix