简体   繁体   English

TypeError:$ .ajax在运行ajax请求时不是函数

[英]TypeError: $.ajax is not a function while running a ajax request

Instead of curl, I'm using jsonp format to extract data from the api. 而不是curl,我使用jsonp格式从api中提取数据。 Here I'm using wit.ai api for sample reference. 在这里,我使用wit.ai api作为样本参考。 I have made a request using the following format. 我使用以下格式提出了请求。

Sample Curl to get this 样本卷曲得到这个

$ curl \
      -H 'Authorization: Bearer $TOKEN' \
      'https://api.wit.ai/message?v=20160526&q=hello'

And now my code 现在是我的代码

var $ = require('jquery');

$.ajax({
  url: 'https://api.wit.ai/message',
  data: {
    'q': 'set an alarm in 10min',
    'access_token' : 'MY_WIT_TOKEN'
  },
  dataType: 'jsonp',
  method: 'GET',
  success: function(response) {
      console.log("success!", response);
  }
});

And then I executed node app.js in the terminal which gave the following error. 然后我在终端中执行了节点app.js,产生了以下错误。

c:\app.js:3
$.ajax({
  ^

TypeError: $.ajax is not a function
    at Object.<anonymous> (c:\app.js:3:3)
    at Module._compile (module.js:409:26)
    at Object.Module._extensions..js (module.js:416:10)
    at Module.load (module.js:343:32)
    at Function.Module._load (module.js:300:12)
    at Function.Module.runMain (module.js:441:10)
    at startup (node.js:139:18)
    at node.js:968:3

Why I'm getting the error? 为什么我收到错误? Is there any other way to run ajax using the terminal? 有没有其他方法可以使用终端运行ajax?

If you are using Jquery on the client side, include this in the <head> tag of your template: 如果您在客户端使用Jquery,请将其包含在模板的<head>标记中:

<script src="jquery-3.1.1.min.js"></script>

If you are using jquery on the server side, install jquery using npm, and use this: 如果您在服务器端使用jquery,请使用npm安装jquery,并使用:

require("jsdom").env("", function(err, window) {
    if (err) {
        console.error(err);
        return;
    }

    var $ = require("jquery")(window);
});

Personally I will not prefer using jquery on the client side. 我个人不喜欢在客户端使用jquery。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM