2016-03-28 24 views
0

Ich bin ein Backend für eine Android-App, die nodejs auf der Serverseite, die Android-App macht eine POST-Anfrage mit den erforderlichen Parametern für den Server, der Server ist verantwortlich Verarbeitung und senden Sie die Antwort an den angeforderten Benutzer als SMS.Ich habe eine transaktionale SMS-Gateway-API, die perfekt funktioniert, um SMS als GET-Anfrage aus dem Browser zu senden.aber die gleiche API nicht SMS senden, während eine GET-Anfrage an die API in der Knoten Skript die Anfrage-Modul ...Probleme machen GET-Anfrage in Node JS

Da unten ist mein Code, bitte vorschlagen, wo ich falsch werde ..

var express = require('express'); 
var request = require("request"); 
var bodyParser = require('body-parser'); 
var app = express(); 
var userName = "myUserName"; 
var passWord = "myPassWord"; 
var senderID = "mySenderID"; 
var content; 
var from_number; 

app.set('port', (process.env.PORT || 5000)); 
app.use(express.static(__dirname + '/public')); 
app.get('/', function(request, response) { 
response.send('We Dont Reply for GET/,make a POST/ instead..'); 
}); 

app.post('/', 
bodyParser.urlencoded({ extended: true }), 
function(req, res) { 
    content = req.body.content; //Parameters passed as POST Request from my Android App 
    from_number = req.body.from_number; 
    console.log('making request to offlinebrowser-web with URL as ' + content + ' and sender as ' + from_number); 
    request("http://offlinebrowser-web.appspot.com/ExtractServlet?url=http://"+content+"&OutputType=1&ExtractorType=1", function(error, response, data) { 
    console.log('backend response : ' + data); //logs to console the valid output of GET Request 
    console.log('initiating response module'); 
    request("**3.*5.*4.1*9/api/v3/sendsms/plain?user="+userName+"&password="+passWord+"sZd5y6AA&sender="+senderID+"&SMSText="+data+"&type=longsms&GSM="+from_number, function(error, response, body) 
    //making a GET request to the above link in browser,perfectly sends an SMS,but here doesnt work! 
    { 
     console.log(body); //this line logs undefined to the console 
    }); 
    res.status(200).end(); 
    }); 
}); 
app.listen(app.get('port'), function() { 
    console.log('Node app is running on port', app.get('port')); 
}); 
+0

voranstellte. Haben Sie console.log den Fehler- oder Statuscode eingegeben? Wenn ja, was sind sie? – scottjustin5000

+0

console.log (body) für die API Anfrage Protokolle 'undefined' wie ich im Kommentar im Code erwähnt –

+0

Sicher, aber was ist mit Fehler oder Status-Code? – scottjustin5000

Antwort

1

Ich habe dieses Problem gelöst, indem ich einfach den API-URI mit einem http: //