gpt4 book ai didi

Javascript:如何在响应字符串解析中处理 syntaxError

转载 作者:行者123 更新时间:2023-12-03 08:09:51 26 4
gpt4 key购买 nike

在我的 HTML 文件中,我有一行(如下)通过 WiFi 从设备获取响应并使数据可用于我的 JavaScript,它运行良好,除非响应文本中有错误并停止。 <script type="text/javascript" src="http://192.168.4.1/"></script>响应是一个代表 JavaScript 变量的文本字符串,它有时会被破坏并抛出错误。
示例:

Uncaught SyntaxError: invalid assignment left-hand side  192.168.4.1:14:3  
SyntaxError: unterminated string literal 192.168.4.1:3:8
我需要一个解决方案来捕获解析接收到的字符串的错误,以便我可以再次运行上述语句以获取新字符串。
谢谢
下面是响应字符串的图片(JS变量。)
enter image description here
问题是一旦脚本被加载,它的内容可能是错误的,我想避免因此而出现错误。
更新#1。使用 XMLHttpRequest 获取数据
<script>
const Http = new XMLHttpRequest();
const url='http://192.168.4.1/';
Http.open("GET", url);
// Http.setRequestHeader('Access-Control-Allow-Origin', '*');
Http.send();
ReturnVar = Http.responseText
Http.onreadystatechange = (e) => { console.log(Http.responseText) }
</script>
以下是浏览器控制台中的详细信息,上面的脚本运行后的标题。
   GET
scheme http
host 192.168.4.1
filename /
Address 192.168.4.1:80
Transferred 1.82 KB (1.82 KB size
Request headers (278B)  
GET /
Host: 192.168.4.1
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:81.0) Gecko/20100101 Firefox/81.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Origin: null
DNT: 1
Connection: keep-alive
Cache-Control: max-age=0

最佳答案

您有一个脚本标签,它正在加载脚本并评估其内容。您需要以编程方式修改它,因此您需要
以文本形式获取文件
https://www.freecodecamp.org/news/here-is-the-most-popular-ways-to-make-an-http-request-in-javascript-954ce8c95aaa/
您只需要以编程方式下载文件的内容,而不是 srcscript .
评估它
在继续之前,请阅读以下内容:https://javascriptweblog.wordpress.com/2010/04/19/how-evil-is-eval/
现在,你知道 eval并不完全流行——而且是正确的——如果你仍然确定你需要按原样运行脚本,请研究 eval并使其像以前一样工作
将其封装成 try-catch
错误示例:

eval("'");
try-catch 中的错误示例:
try {eval("'")} catch (ex) {}

关于Javascript:如何在响应字符串解析中处理 syntaxError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64410440/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com