读取本地文本文件 JavaScript [重复]

Posted

技术标签:

【中文标题】读取本地文本文件 JavaScript [重复]【英文标题】:Read local txt file JavaScript [duplicate] 【发布时间】:2018-07-09 19:37:32 【问题描述】:

我试图在 JS 中读取 txt 文件。 所以我使用this 代码。

我的 txt 文件看起来:["187.48.35.40"]

我的应用程序正在谷歌地图上搜索 IP 地址。

当我输入我的代码时:var ip = ["187.48.35.40"]; 我的程序运行良好,但我想用 IP 地址打开 txt 文件。

function readTextFile(file)

var rawFile = new XMLHttpRequest();
rawFile.open("GET", file, false);
rawFile.onreadystatechange = function ()

    if(rawFile.readyState === 4)
    
        if(rawFile.status === 200 || rawFile.status == 0)
        
            var allText = rawFile.responseText;
            alert(allText);
        
    

rawFile.send(null);

var ip = readTextFile("xxx.txt");

但我的应用程序无法读取 txt 文件。

【问题讨论】:

您是否遇到任何错误? 没有任何错误。 根据您链接的代码,您必须提供完整的文件 url,包括 file:// 协议部分。请记住,这仅适用于本地文件。如果您希望文件位于服务器上,则必须相应地设置服务器并使用服务器上文件的 url。 Chrome 会认为这是一个“跨源请求”,并拒绝它。 Firefox 将允许它,前提是该文件与运行脚本的 html 文件位于同一文件夹中。 file:/// 协议没有明确定义什么是跨源的。将脚本移动到服务器(可以是 localhost)。 XMLHttpRequest 不起作用,除非您通过 HTTP 或 HTTPS 从服务器请求。即使您希望它在本地运行,您也必须运行本地 Web 服务器并针对它提出请求。因此,资源的位置也必须以协议为前缀(即http://https://)。 【参考方案1】:

XMLHttpRequest 不起作用,除非您通过 HTTP 或 HTTPS 从服务器请求。即使您希望它在本地运行,您也必须运行本地 Web 服务器并针对它提出请求。因此,资源的位置也必须以协议为前缀(即http://https://)。

【讨论】:

以上是关于读取本地文本文件 JavaScript [重复]的主要内容,如果未能解决你的问题,请参考以下文章

将本地文本文件读入 JavaScript 数组 [重复]

如何使用Javascript读取本地文本文件并逐行读取?

如何在javascript中读取本地的json格式文本文件

从 Web 服务器上的文本文件中读取文本 [重复]

Javascript / Jquery识别文本文档中的每一行[重复]

根据javascript中的文本行数更改textarea的高度[重复]