#javascript #node.js #macos #express #xmlhttprequest
#javascript #node.js #macos #выразить #xmlhttprequest
Вопрос:
Очень новичок в этом, но я пытаюсь протестировать небольшое приложение, которое выполняет запрос GET к экспресс-конечной точке на сервере localhosthttp://localhost:3000/golfpool-standings и использует возвращенный JSON для отображения данных в таблице html, но когда я пытаюсь использовать в скрипте, мне не удается загрузить ресурс: net::ERR_CONNECTION_REFUSED Я тестирую на live-сервереhttp://127.0.0.1:5500/golfApp/index.html Я столкнулся с этим, даже просмотрев похожие ответы здесь. Любая помощь приветствуется. Мой первый вопрос, поэтому будьте нежны, пожалуйста.
Я могу получить доступ к конечной точке http://localhost:3000/golfpool-standings из браузера Chrome и возвращенный JSON отображается на экране, поэтому кажется, что серверная часть работает. https://github.com/paulcullen79/golfApp
// index.js
const data = $.getJSON("http://localhost:3000/golfpool-
standings")
// server.js
const express = require('express')
const app = express()
app.get('/golfpool-standings', (req, res) => {
res.send(data)
})
const port = process.env.port || 3000
app.listen(port, () => console.log(`Listening on port ${port}...`))
Ответ №1:
Эта строка $.getJSON("http://localhost:3000/golfpool-standings")
запрашивает json
ресурс, но ваш сервер не обслуживает json
.
Из jQuery
документов:
Начиная с jQuery 1.4, если файл JSON содержит синтаксическую ошибку, запрос обычно завершается без сбоев.
Измените код вашего сервера:
app.get('/golfpool-standings', (req, res) => {
// send data as json
res.json(data)
})
Или измените свой запрос на $.get("http://localhost:3000/golfpool-standings")
Комментарии:
1. Большое вам спасибо за ответ, теперь я получаю ответ объекта обратно, хотя и не уверен, как оценить responseJSON объекта, но, по крайней мере, теперь я получаю правильный ответ.
2. Получилось, когда я использую метод done с ответом. Спасибо.