从heroku网站获取

时间:2017-11-20 19:58:03

标签: javascript heroku twilio fetch-api

我创建了一个网络应用程序,允许用户输入他们的电话号码,然后点击回车接收来自我从twilio购买的号码的电话。它通过从我的localhost db中获取电话号码来实现此目的。我现在在heroku服务器上安装了该Web应用程序。但是当我点击通话时我会收到这些错误。

“无法加载资源:找不到具有指定主机名的服务器。”

“未处理的承诺拒绝:TypeError:输入错误”

当我从当地主机那里取出它时它工作正常,但现在我遇到了问题。谁能告诉我为什么会这样?

谢谢

js file

const express = require("express");
const app = express();

const port = 3000;

app.get("/", function(req, resp){
resp.sendFile(__dirname+"/input.html");
});



app.get("/:data", function(req, resp){

var accountSid = 'accountsid'
var authToken = 'tokensid'

var client = require('twilio')(accountSid, authToken);

client.calls.create({
url: 'https://demo.twilio.com/docs/voice.xml',
to: req.params.data,
from: '3738373839',

});

html文件

<input type="text" placeholder="Enter your number" id="inputNum" />
<button id="submitNum">Enter</button>

<script>



submitNum.addEventListener("click", function(){

var inputNum = document.getElementById("inputNum");
var submitNum = document.getElementById("submitNum");

var phoneNumber = inputNum.value;

fetch("https://******.herokuapp.com" 
+ phoneNumber).then((resp)=>{
console.log(resp);
});
});

</script>

1 个答案:

答案 0 :(得分:0)

假设这些不是拼写错误,"http://https://******.herokuapp.com"不是有效的服务器(注意http两次)。我建议将其更改为"/" + phoneNumber,以便它使用网站的当前主机(localhost或heroku),无论它在哪里运行。

另外,作为一种风格,你应该将你的twilio客户端放在你的GET功能之外,这样它只会创建一次,而不是每次有人调用端点时。