我很抱歉,如果我遗漏了一些明显的东西,比如“而不是”,但我尝试了许多不同的方式,它仍然做同样的事情,即显示实际的javascript代码,而不是功能,当我把它在.html文件中或给我这个错误: 解析错误:语法错误,意外'<'在第9行的E:\ XAMPP \ htdocs \ website2 \ test.php中 当我把它放在一个php文件中时。
以下是代码:
<!DOCTYPE html>
<html>
<head>
<script src="js.js" type="text/javascript"></script>
<title>TEST</title>
</head>
<body>
<?php
echo '<script type="text/javascript">
var https = require("https");
var username = "04d2ac7f76a0fbc0eee9dc5ef96b9259";
var password = "dc70ffc7ad911236bc2e0822855e2d42";
var auth = "Basic " + new Buffer(username + ':' + password).toString('base64');
var request = https.request({
method: "GET",
host: "api.intrinio.com",
path: "/companies?ticker=AAPL",
headers: {
"Authorization": auth
}
}, function(response) {
var json = "";
response.on('data', function (chunk) {
json += chunk;
});
response.on('end', function() {
var company = JSON.parse(json);
console.log(company);
});
});</script>';
?>
</body>
</html>
答案 0 :(得分:3)
为什么没有没有php标签呢? 该错误是因为您没有转义代码中的单引号。
没有php的示例:
<!DOCTYPE html>
<html>
<head>
<script src="js.js" type="text/javascript"></script>
<title>TEST</title>
</head>
<body>
<script type="text/javascript">
var https = require("https");
var username = "04d2ac7f76a0fbc0eee9dc5ef96b9259";
var password = "dc70ffc7ad911236bc2e0822855e2d42";
var auth = "Basic " + new Buffer(username + ':' + password).toString('base64');
var request = https.request({
method: "GET",
host: "api.intrinio.com",
path: "/companies?ticker=AAPL",
headers: {
"Authorization": auth
}
}, function(response) {
var json = "";
response.on('data', function (chunk) {
json += chunk;
});
response.on('end', function() {
var company = JSON.parse(json);
console.log(company);
});
});</script>
</body>
</html>
php的例子:
<!DOCTYPE html>
<html>
<head>
<script src="js.js" type="text/javascript"></script>
<title>TEST</title>
</head>
<body>
<?php
echo '<script type="text/javascript">
var https = require("https");
var username = "04d2ac7f76a0fbc0eee9dc5ef96b9259";
var password = "dc70ffc7ad911236bc2e0822855e2d42";
var auth = "Basic " + new Buffer(username + ':' + password).toString(\'base64\');
var request = https.request({
method: "GET",
host: "api.intrinio.com",
path: "/companies?ticker=AAPL",
headers: {
"Authorization": auth
}
}, function(response) {
var json = "";
response.on(\'data\', function (chunk) {
json += chunk;
});
response.on(\'end\', function() {
var company = JSON.parse(json);
console.log(company);
});
});</script>';
?>
</body>
</html>
但更重要的是这是一个node.js代码而不是客户端javascript。 我建议您学习一些node和javascript。
答案 1 :(得分:0)
你应该逃避&#39;在&#39;在你的代码中。
答案 2 :(得分:0)
正如Ivan所指出的那样,你怀疑自己已经把'和'放在不合适的地方而没有逃脱。
<!DOCTYPE html>
<html>
<head>
<script src="js.js" type="text/javascript"></script>
<title>TEST</title>
</head>
<body>
<?php
echo '<script type="text/javascript">
var https = require("https");
var username = "04d2ac7f76a0fbc0eee9dc5ef96b9259";
var password = "dc70ffc7ad911236bc2e0822855e2d42";
var auth = "Basic " + new Buffer(username + \':\' + password).toString(\'base64\');
var request = https.request({
method: "GET",
host: "api.intrinio.com",
path: "/companies?ticker=AAPL",
headers: {
"Authorization": auth
}
}, function(response) {
var json = "";
response.on(\'data\', function (chunk) {
json += chunk;
});
response.on(\'end\', function() {
var company = JSON.parse(json);
console.log(company);
});
});</script>';
?>
</body>
答案 3 :(得分:0)
Echo函数用于输出字符串,并且您正在回显不是有效字符串的代码语句。把它作为单行输入:
<?php echo '<script type="text/javascript">var https = require("https");var username = "04d2ac7f76a0fbc0eee9dc5ef96b9259";var password = "dc70ffc7ad911236bc2e0822855e2d42";var auth = "Basic " + new Buffer(username + ':' + password).toString(\'base64\');var request = https.request({method: "GET",host: "api.intrinio.com",path: "/companies?ticker=AAPL",headers: {"Authorization": auth}}, function(response) {var json = "";response.on(\'data\', function (chunk) {json += chunk;});response.on(\'end\', function() {var company = JSON.parse(json);console.log(company);});});</script>';?>