0

我有一个只能在Facebook上运行的chrome扩展,我试图将扩展收集的数据发送到我在GoDaddy网站服务器上的MySQL数据库。我不断收到错误消息“无法加载资源:服务器响应状态为500(内部服务器错误)”。我不确定是什么问题,因为我只是进入Web开发。 这里是我在我的浏览器扩展程序内容脚本代码:XMLHttpRequest上的内部服务器错误

var dummyUrl = new URL ("http://www.bbc.com/news/world-us-canada-41081629"); 
 
\t \t console.log("dummyUrl: " + dummyUrl); 
 
\t \t //Create XMLHttpRequest Object 
 
\t \t var xhttp = new XMLHttpRequest(); 
 
\t \t //Send request 
 
\t \t xhttp.open("POST", "https://pocketchange.social/data.php", true); 
 
\t \t xhttp.send(dummyUrl);

这里是我的web服务器运行一个查询到的数据发送到我的数据库我的PHP文件:

<?php 
$mysqli = new mysqli("localhost", "Jarid", "Database", "myURL"); 

//Check connection 
if(mysqli === false) { 
    die("ERROR: Could not connect" . $mysqli->connect_error; 
} 

//Print host information 
echo "Connection successful. Host info: " . $mysqli->host_info; 

//Escape user inputs 
$url = $mysqli->real_escape_string($_REQUEST['url']); 
$description = $mysqli->real_escape_string($_REQUEST['description']); 
$keywords = $mysqli->real_escape_string($_REQUEST['keywords']); 
$content = $mysqli->real_escape_string($_REQUEST['content']); 
$language = $mysqli->real_escape_string($_REQUEST['language']); 

//Execute query 
$query = "INSERT INTO url_data (url, description, keywords, content, language) VALUES ('$url', '$description', '$keywords', '$content', '$language')"; 

//Checking to see if values were inserted properly 
if($mysqli->query($query) === true) { 
    echo "Data successfully inserted."; 
} 
else { 
    echo "ERROR could not execute query" . $mysqli->error; 
} 

$mysqli->close(); 
?> 

我的问题主要是,我试图发送数据到一个完全不同的服务器?我并不是非常清楚所有这些部分如何相互通信(即,Chrome扩展如何知道如何连接到GoDaddy服务器,以及php文件如何将数据发送到数据库等) 谢谢提前。

回答

0

关于“500(内部服务器错误)”,这突出显示SO post可以给你一些想法。

500代码通常会在服务器上显示错误,而不是 任何与您的代码。有些想法

  • 与服务器开发者交谈以获取更多信息。你无法直接获得更多信息。
  • 验证你的参数进入调用(值)。寻找你认为可能导致服务器进程出现问题的任何事情。过程 不应该死,应该返回给你一个更好的代码,但也有错误发生在 那里。
  • 可能是间歇性的,就像服务器数据库出现故障一样。也值得尝试在其他时间

您可以检查后对一些可能的答案为好。

希望这会有所帮助。