为了账号安全,请及时绑定邮箱和手机立即绑定

Js脚本适用于桌面但不适用于移动设备

Js脚本适用于桌面但不适用于移动设备

GCT1015 2023-06-09 17:36:30
所以 js 代码从本地 api 获取 json 数据并以表格格式显示数据,在桌面上一切正常,但在移动设备上不显示任何数据。我尝试了一切,但这个 js 代码有问题。我不明白出了什么问题,html 页面的其余部分在移动设备上加载得很好。我应该对代码进行任何更改吗?function getUrl(start = 0) {    return 'http://localhost/login_registration_system_LAMP/api.php';}function getData(url) {    fetch(url)        .then(response => response.json())        .then(data => loadDataIntoTable(data))        .catch(err => console.log(err));}function loadDataIntoTable(data) {    let coinprodName = [];    let coinprice = [];    let coinper = [];    let coinPerson = [];    let coinphone = [];    let coinsize = [];    let coinbrand = [];    let coinspecial = [];    let coinlife = [];    let coinmoq = [];    data.forEach((coin) => {        coinprodName.push(coin.product_name);        coinprice.push(coin.price);        coinper.push(coin.per);        coinPerson.push(coin.person_name);        coinphone.push(coin.phone);        coinsize.push(coin.size);        coinbrand.push(coin.brand);        coinspecial.push(coin.special);        coinlife.push(coin.life);        coinmoq.push(coin.moq);    });    let tableBody = document.getElementById('crypto-table-body');    let html = "";    for(let i = 0; i < coinmoq.length; i++) {        html += "<tr>";        html += "<td>" + coinprodName[i] + "</td>";        html += "<td>" + coinprice[i] + "</td>";        html += "<td>" + coinper[i] + "</td>";        html += "<td>" + coinPerson[i] + "</td>";        html += "<td>" + coinphone[i] + "</td>";        html += "<td>" + coinsize[i] + "</td>";        html += "<td>" + coinbrand[i] + "</td>";        html += "<td>" + coinspecial[i] + "</td>";        html += "<td>" + coinlife[i] + "</td>";        html += "<td>" + coinmoq[i] + "</td>";                        html += "</tr>";    }    tableBody.innerHTML = html;}function init() {    const url = getUrl();    getData(url);}init();
查看完整描述

2 回答

?
呼啦一阵风

TA贡献1802条经验 获得超6个赞

localhost是一个主机名,指的是当前用来访问它的计算机。所以在你的手机上,没有localhost.

您可以ngrok在安装后使用,如下所示,

ngrok http 80


查看完整回答
反对 回复 2023-06-09
?
四季花海

TA贡献1811条经验 获得超5个赞

当您制作服务器并从另一台设备使用它时,请使用内部 ip 来192.168.1.X指向它。

示例:在同一网络中,您使用台式机和手机,台式机有内部 ip192.168.1.2而您有电话192.168.1.3

所以当你使用getUrl函数时:

function getUrl(start = 0) {
    return 'http://192.168.1.2/login_registration_system_LAMP/api.php';
}

而且...如果您的电话不在同一网络中,那么您需要使用其他工具,如“noIp”、ngrok 等...

提示:

CORS 怎么样?好吧,如果你不发送 cors 标头,你的手机就无法使用你的 API。请检查这个:

 header("Access-Control-Allow-Origin: *");


查看完整回答
反对 回复 2023-06-09
  • 2 回答
  • 0 关注
  • 121 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信