2017-04-24 40 views
1

我正在更新我的twilio sms消息工具以使用express 4.在一行代碼中,我遇到問題。更新Twilio MediaUrl與Express 4一起使用

var mediaUrl = request.param('MediaUrl' + i); //deprecated in express 4 

當我試圖與這條線

var mediaUrl = request.query.MediaUrl + i; 

它不再鏈接到twilio MediaURL更新。這裏是完整的參考代碼。

var numMedia = parseInt(request.body.NumMedia); 
if (numMedia > 0) { 
    for (i = 0; i < numMedia; i++) { 

     //var mediaUrl = request.query.MediaUrl + i; 
     var mediaUrl = request.param('MediaUrl' + i); //deprecated in express 4 

     groupRef.where({"memberNumber":request.query.From}).limit(1).on("value", function (data){ 
      if(data.count()){ 
       data.forEach(function(snapshot){ 
        var member = snapshot.value(); 
        messagesRef.push({ 
         sid: request.body.MessageSid, 
         type:'text', 
         tstamp: new Date().toLocaleString('en-US', { timeZone: "America/Denver" }), 
         fromName:member.memberName, 
         fromNumber:request.body.From, 
         message:"", 
         media:mediaUrl, 
         groupNumber:request.body.To 
        }); 
       }); 
      } 
     }); 
    } 
} 

回答

2

我認爲這是由於這樣的事實,Twilio是數據發佈到你和request.query正在尋找在查詢字符串。將Twilio方法更改爲GET,或使用req.body從POST獲取值。

的簡單的解決辦法是使用:

var mediaUrl = request.body.MediaUrl + i; 
+0

的req.body現在得到的mediaURL。在獲取URL後仍然會遇到一些問題。但這是一個需要解決的不同問題。謝謝 –

+0

我很高興這有助於你,並感謝你將我的答案標記爲已接受。請注意,由於您已經編輯了問題以包含答案,因此未來的訪問者可能會感到困惑。 – Andy

+0

我把它放回原處。感謝您的更正 –

相關問題