【问题标题】:How to put JSON file on a local server?如何将 JSON 文件放在本地服务器上?
【发布时间】:2016-08-23 03:34:15
【问题描述】:

在过去的两个小时里,我一直在疯狂地试图为我遇到的问题找到答案。我试图访问一个名为 data.json 的本地 JSON 文件,该文件放在我的项目目录中。我的控制台返回了这个错误:

跨源请求仅支持以下协议方案:http、data、chrome、chrome-extension、https、chrome-extension-resource。

我现在知道我无法在本地访问此文件,我必须通过外部服务器访问。有人如何使用此文件设置本地服务器?有人可以解释一下如何使用 python、json-server 和 node、js 来做到这一点吗?我完全迷路了。

这是我的代码:

$(function (){

var $orders = $("#orders");
var $name = $('#name');
var $drink = $('#drink');

$.ajax({
    type: 'GET',
    datatype: 'json',
    url: 'data.json',
    success: function(orders) {
      $.each(orders, function(i, order) {
        $orders.append('<li>Name: ' + order.name + ', Drink: ' + order.drink +  '</li>');
      });
    },
    error: function() {
      alert('error loading orders');
    }
});

$('#add-order').on('click', function() {

    var order = {
        name: $name.val(),
        drink: $drink.val()
    };

    $.ajax({
      type: 'POST',
      url: 'data.json',
      data: order,
      success: function(newOrder) {
        $orders.append('<li>Name: ' + newOrder.name + ', Drink: ' + newOrder.drink +  '</li>');
        },
      error: function () {
        alert("error saving order");
      }
      });
    });
});

【问题讨论】:

    标签: python json ajax node.js localserver


    【解决方案1】:

    有人如何使用此文件设置本地服务器?

    一个非常简单的 Python 网络服务器可以通过一个命令启动。这将允许您通过 HTTP 获取内容。

    从您的data.json 文件所在的目录中,您可以运行以下命令之一...

    • 如果您运行的是 Python 2:

      • $ python -m SimpleHTTPServer 8000
    • 或者如果您正在运行 Python 3:

      • $ python -m http.server 8000

    启动服务器后,它将在端口 8000 上监听请求。

    您可以通过向 localhost (http://127.0.0.1:8000/data.json) 发送 HTTP GET 请求来访问它

    【讨论】:

      猜你喜欢
      • 2019-03-20
      • 2016-03-29
      • 1970-01-01
      • 2012-07-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-15
      相关资源
      最近更新 更多