JQuery с getJSON не работает с локальным файлом json [duplicate]

Это потому, что когда вы вводите число, а затем нажмите Enter, input.nextInt() потребляет только номер, а не «конец строки». Когда input.nextLine() выполняется, он потребляет «конец строки» все еще в буфере с первого входа.

Вместо этого используйте input.nextLine() сразу после input.nextInt()

103
задан JohnnyCoder 8 June 2015 в 15:09
поделиться

7 ответов

Если вы делаете что-то вроде написания HTML и Javascript в редакторе кода на своем персональном компьютере и тестируете вывод в своем браузере, вы, вероятно, получите сообщения об ошибках Cross Origin Requests. Ваш браузер будет отображать HTML и запускать Javascript, jQuery, angularJs в вашем браузере без необходимости установки сервера. Но многие веб-браузеры запрограммированы для наблюдения за межсайтовыми атаками и будут блокировать запросы. Вы не хотите, чтобы кто-либо мог прочитать ваш жесткий диск из вашего веб-браузера. Вы можете создать полностью функционирующую веб-страницу с помощью Notepad ++, которая будет запускать Javascript и фреймворки, такие как jQuery и angularJs; и проверить все, просто используя пункт меню «Блокнот ++», RUN, LAUNCH IN FIREFOX. Это хороший и простой способ начать создание веб-страницы, но когда вы начинаете создавать что-либо большее, чем макет, css и простая навигация по страницам, вам нужен локальный сервер, настроенный на вашем компьютере.

Вот некоторые которые я использую.

  1. Проверьте свою веб-страницу локально на Firefox, затем разверните ее на свой хост.
  2. или: запустите локальный сервер

Тест на Firefox, Deploy to Host

  1. В настоящее время Firefox разрешает запросы Cross Origin из файлов, загруженных с вашего жесткого диска
  2. Ваш веб-хостинг-сайт разрешает запросы к файлам в папки, настроенные файлом манифеста

Запуск локального сервера

  • Запустите сервер на вашем компьютере, например Apache или Python
  • Python не является сервером, но он будет запускать простой сервер

Запустить локальный сервер с помощью Python

Получить свой IP-адрес:

  • В Windows: откройте «Командная строка». Все программы, аксессуары, командная строка
  • Я всегда запускаю Command Prompt как Administrator. Щелкните правой кнопкой мыши элемент меню Command Prompt и найдите Run As Administrator
  • Введите команду: ipconfig и нажмите Enter.
  • Ищите: адрес IPv4. , , , , , , , 12.123.123.00
  • Есть веб-сайты, которые также будут отображать ваш IP-адрес

Если у вас нет Python, загрузите и установите его.

Используя «Командная строка», вы должны перейти в папку, в которой файлы должны быть веб-страницей.

  • Если вам нужно вернуться в каталог C:\root - type cd /
  • type cd Диск: \ Folder \ Folder \ etc, чтобы попасть в папку, где находится ваш .Html-файл (или php и т. д.)
  • Проверить путь. type: path в командной строке. Вы должны увидеть путь к папке, где находится python. Например, если python находится в C: \ Python27, тогда вы должны увидеть этот адрес в перечисленных путях.
  • Если путь к каталогу Python отсутствует в пути, вы должны установить путь , введите: help path и нажмите Enter. Вы увидите помощь для пути.
  • Введите что-то вроде: path c: \ python27% path%
  • % path% сохраняет все ваши текущие пути. Вы не хотите уничтожать все ваши текущие пути, просто добавьте новый путь.
  • Создайте новый путь из папки, в которой вы хотите обслуживать файлы.
  • Запустите Python Server: Тип: python -m SimpleHTTPServer port Где «порт» - это номер требуемого порта, например python -m SimpleHTTPServer 1337
  • Если вы оставите порт пустым, по умолчанию он будет иметь порт 8000
  • Если сервер Python запускается успешно, вы увидите сообщение.

Запустите веб-приложение Локально

  • Откройте браузер
  • В строке адресной строки: http://your IP address:port
  • http://xxx.xxx.x.x:1337 или http://xx.xxx.xxx.xx:8000 для значения по умолчанию
  • Если сервер работает, вы увидите список своих файлов в браузер
  • Нажмите файл, который вы хотите обслуживать, и он должен отображаться.

Дополнительные усовершенствованные решения

  • Установите редактор кода, веб-сервер и другие сервисы, которые интегрированы.

Вы можете установить Apache, PHP, Python, SQL, Debuggers и т. д. все отдельно на вашем компьютере, а затем потратить много времени, пытаясь выяснить, как заставить их работать вместе, или искать решение, которое объединяет все эти вещи.

Мне нравится использовать XAMPP с IDE NetBeans. Вы также можете установить WAMP, который предоставляет User Interface для управления и интеграции Apache и других сервисов.

148
ответ дан Sandy Good 28 August 2018 в 01:55
поделиться

Эта ошибка происходит, потому что вы просто открываете html-документы непосредственно из браузера. Чтобы исправить это, вам нужно будет обслуживать ваш код с веб-сервера и получать доступ к нему на localhost. Если у вас установлен Apache, используйте его для обслуживания ваших файлов. Некоторые IDE имеют встроенные веб-серверы, такие как JetBrains IDE, Eclipse ...

Если у вас установлена ​​Node.Js, вы можете использовать http-server . Просто запустите npm install http-server -g, и вы сможете использовать его в терминале, например http-server C:\location\to\app. Kirill Fuchs

2
ответ дан Community 28 August 2018 в 01:55
поделиться

Если вы используете WebStorm Javascript IDE , вы можете просто открыть свой проект из WebStorm в своем браузере. WebStorm автоматически запустит сервер, и вы больше не получите никаких этих ошибок, потому что теперь вы получаете доступ к файлам с разрешенными / поддерживаемыми протоколами (HTTP).

0
ответ дан mathew11 28 August 2018 в 01:55
поделиться

Поместите папку проекта в htdocs каталога Xampp. Запустите свой сервер Apache с помощью панели управления xampp, затем откройте браузер goto localhost / projectfolder, затем он начнет работать

-2
ответ дан sunil KV 28 August 2018 в 01:55
поделиться

Простое решение

Если вы работаете с чистыми файлами html / js / css.

Установите это небольшое серверное ( link ) приложение в хром. Откройте приложение и укажите местоположение файла в каталоге проекта.

Перейти к URL-адресу, показанному в приложении.

Изменить: более разумное решение с использованием Gulp

Шаг 1: Установить Gulp. Выполните следующую команду в своем терминале.

npm install gulp-cli -g
npm install gulp -D

Шаг 2. Внутри каталога проекта создайте файл с именем gulpfile.js. Скопируйте в него следующее содержимое.

var gulp        = require('gulp');
var bs          = require('browser-sync').create();   

gulp.task('serve', [], () => {
        bs.init({
            server: {
               baseDir: "./",
            },
            port: 5000,
            reloadOnRestart: true,
            browser: "google chrome"
        });
        gulp.watch('./**/*', ['', bs.reload]);
});

Шаг 3: Установите плагин синхронизации браузера браузера. Внутри того же каталога, где присутствует gulpfile.js, выполните следующую команду

npm install browser-sync gulp --save-dev

. Шаг 4: Запустите сервер. Внутри того же каталога, где присутствует gulpfile.js, выполните следующую команду

gulp serve
86
ответ дан Sushant Kr 28 August 2018 в 01:55
поделиться

Зависит от ваших потребностей, но есть также быстрый способ временно проверить ваш (фиктивный) JSON, сохранив ваш JSON на http://myjson.com . Скопируйте ссылку api и вставьте ее в свой код javascript. Виола! Если вы хотите развернуть коды, вы не должны забывать изменять этот URL-код в своих кодах!

0
ответ дан user 28 August 2018 в 01:55
поделиться

Я столкнулся с этой ошибкой, когда я развернул проект веб-API локально, и я вызывал проект API только с указанным ниже URL:

localhost // myAPIProject

Поскольку ошибка в сообщении говорится, что это не http: // то я изменил URL и поместил префикс http, как указано ниже, и ошибка исчезла.

http: // localhost // myAPIProject

1
ответ дан usman 28 August 2018 в 01:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: