繁体   English   中英

如何在 Javascript 之外存储链接?

[英]How do you store links outside Javascript?

我正在尝试创建一个将您带到随机网站的网站。 但是,我真的找不到任何答案来存储 javascript 之外的网站链接,这迫使我将它们存储在脚本本身中。 但是,当我需要在脚本中导航并且很难使用它时,这将成为未来的一个问题。 我应该怎么办?

示例脚本:

function clicked(){    
    window.open(links[Math.floor(Math.random()*max)]);
}

var links = [
    "linkexample.com",
    "linkexample2.com",
    "linkexample3.com"
];
  • 就像最后一条评论所说,最好的方法是将它们存储在您的服务器脚本中,以便使用 ajax 访问它们,这是Nodejs服务器脚本和js浏览器脚本的示例

节点

const express = require("express");
var app = express();
app.post("/links", (req, res) => { 
  var links = [
    "linkexample.com",
    "linkexample2.com",
    "linkexample3.com"
   ];
   links = JSON.stringify(links);
   res.setHeader("Content-Type", "application/json; charset=utf-8");
   res.send(links)
});
app.listen(3000, "localhost");

JS 浏览器脚本

var xhr = new XMLHttpRequest();
xhr.onloadend = function(e) { 
  //You can see your links array in the console
  //You can also use JSON.parse() to parse the array in you script and use it
  console.log(e.currentTarget.responseText)
}
xhr.open("POST", "http://localhost:3000/links", true)
xhr.send()

谢谢大家的回答。 我设法找出自己的解决方案,即为链接创建一个额外的 javascript 文件,然后从那里获取值

外部.js

var links = [
    "linkexample.com",
    "linkexample2.com",
    "linkexample3.com"       
];

main.js

function clicked(){    
    window.open(links[Math.floor(Math.random()* links.length)]);
}

我更改了 max 变量,因为它由于某些原因无法正常工作,但至少现在可以正常工作:D

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM