Я пытаюсь вызвать этот API, используя jQuery, и я включил правильный CDN, но он показывает «$ не определен» - PullRequest
0 голосов
/ 14 апреля 2020

Я пытаюсь вызвать этот API, но он не работает, и выдача ошибки $ не определена. Я использовал правильное объявление токена API, включив jquery CDN в HTML. Вот код HTML и JS.

var express = require('express');
var app = express();
var hbs = require('hbs');

app.set('view-engine', 'hbs');

app.use(express.static(__dirname + '/public'));

app.get('/', function(req, res){
    $.ajax({
    headers: { 'X-Auth-Token': 'my api token' },
    url: 'https://api.football-data.org/v2/competitions',
    dataType: 'json',
    type: 'GET',
       }).done(function(response) {
        // do something with the response, e.g. isolate the id of a linked resource   
        res.send(response);
       });
})



app.listen(3000);

Вот код HTML:

<!DOCTYPE HTML>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>

</body>

<script src="https://code.jquery.com/jquery-3.4.1.js" integrity="sha256- 
WpOohJOqMqqyKL9FccASB9O0KwACQJpFTUBLTYOVvVU=" crossorigin="anonymous"></script>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
</html>

Я получаю сообщение об ошибке: «$ is not определены».

1 Ответ

1 голос
/ 14 апреля 2020

Здесь вы смешиваете внутренний и внешний код. Также на внешнем интерфейсе вы включаете две разные версии jQuery.

Я бы порекомендовал изменить код внешнего интерфейса на что-то вроде этого:

<!DOCTYPE HTML>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>

<script src="https://code.jquery.com/jquery-3.4.1.js" integrity="sha256-WpOohJOqMqqyKL9FccASB9O0KwACQJpFTUBLTYOVvVU=" crossorigin="anonymous"></script>   
<script>
  $.ajax({
    headers: { 'X-Auth-Token': 'my api token' },
    url: 'https://api.football-data.org/v2/competitions',
    dataType: 'json',
    type: 'GET',
  }).done(function(response) {
    // do something with the response
    console.log(response);
  });
</script>

</body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...