Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在没有服务器的情况下处理POST或GET请求_Javascript_Ajax - Fatal编程技术网

Javascript 在没有服务器的情况下处理POST或GET请求

Javascript 在没有服务器的情况下处理POST或GET请求,javascript,ajax,Javascript,Ajax,我正在浏览以下文章: 这里说明了AJAX的概念,但是为了简单说明,内容不是连接到服务器,而是从包含浏览器的系统中获取 因此,在上述链接的以下代码行中: var url = verse + '.txt'; var request = new XMLHttpRequest(); request.open('GET', url); 这里的GET动词是在本地系统中获取文件的内容,并且那里没有服务器 类似地,通过使用javascript和在没有服务器的情况下 我们可以添加一些参数来获取或发布谓词,并在

我正在浏览以下文章:

这里说明了AJAX的概念,但是为了简单说明,内容不是连接到服务器,而是从包含浏览器的系统中获取

因此,在上述链接的以下代码行中:

var url = verse + '.txt';
var request = new XMLHttpRequest();
request.open('GET', url);
这里的GET动词是在本地系统中获取文件的内容,并且那里没有服务器

类似地,通过使用javascript和在没有服务器的情况下 我们可以添加一些参数来获取或发布谓词,并在本地系统中运行代码,该系统处理这些参数并发送输出

比如:

var url =  'verse + '.txt' + '?' 'name = ' + 'vim' ; //Adding parameters
还有一些javascript文件,它接受这些参数“name” 并以大写形式返回,如“VIM”


我们可以只使用Javascript(而不是nodejs或任何设置服务器的东西)而不进行服务器监听吗?

为了达到要求,您可以使用Chrome或使用flag set启动的Chrome浏览器

fetch()

为了

一些javascript文件,它接受这些参数“name”并返回 大写,如“VIM”

Worker
可用于获取本地文件的内容,操作内容,然后调用
postMessage()
与主线程通信

比如说

worker.js

onmessage = e => {
  // do stuff
  let url = new URL(e.data);
  let [[,param]] = [...url.searchParams]; // get query string parameter `'vim'`
  let request = new XMLHttpRequest();
  request.open('GET', 'file:///path/to/local/file' /* e.data */);
  request.onload = e => {
    console.log(request.responseText); // `setTimeout()` can be inside `load` handler
  }
  request.send();
  // asynchronous response
  setTimeout(() => {
    // set `data URL` that `fetch()` will request
    postMessage(`data:text/plain,${param.toUpperCase()}`);
  }, Math.floor(Math.random() * 2000));
}
控制台
脚本

const localRequest = async(url) => {
  const request = await fetch(await new Promise(resolve => {
    const worker = new Worker('worker.js');
    worker.onmessage = e => {
      resolve(e.data);
      worker.terminate();
    }
    worker.postMessage(url);
  }));
  const response = await request.text();
  console.log(response);
}

localRequest('file:///verse.txt?name=vim');

是的,这个要求是可能的。我认为不是。是的,您可以从本地文件系统访问文件-但是您需要运行一些代码,以便根据查询参数获得不同的结果,为此您需要一个服务器。(它可能只是localhost,但仍然是一个服务器。)@guest271314:希望与此同时您正在为how部分写一个答案…:)@RobinZigmond:我可以从本地文件系统执行文件吗?使用jQuery的一种方法是使用
在发送之前使用
$.ajax()
选项。响应可以以任何方式进行调整。可以使用
URLSearchParams()解析请求
并在提出请求之前转换为大写。对于不允许满足要求的内容是否有任何限制?我需要彻底了解这一点……但请务必向我鞠躬,感谢我探索这一主题并提供解决方案。