当前位置: 首页 > 知识库问答 >
问题:

AWS Lambda Parse JSON(意外标记)

洪俊捷
2023-03-14

我正在尝试让Lambda函数访问API并返回JSON。

http://api.openweathermap.org/data/2.5/weather?id=2172797

P. S此API ID是OW提供的演示ID。

 var jsonurl = "http://api.openweathermap.org/data/2.5/weather?id=2172797&appid=b1b15e88fa797225412429c1c50c122a";
 var data = JSON.parse(jsonurl);
 exports.handler = function(event, context) {
  console.log(data);
  context.done(null, data);  // SUCCESS with message
};
{
  "errorMessage": "Unexpected token h",
  "errorType": "SyntaxError",
  "stackTrace": [
    "Object.parse (native)",
    "Object.<anonymous> (/var/task/index.js:3:17)",
    "Module._compile (module.js:456:26)",
    "Object.Module._extensions..js (module.js:474:10)",
    "Module.load (module.js:356:32)",
    "Function.Module._load (module.js:312:12)",
    "Module.require (module.js:364:17)",
    "require (module.js:380:17)"
  ]
}
START RequestId: 8ca0fbd1-eee5-11e5-b9dd-31048a8d5a45 Version: $LATEST
Syntax error in module 'index': SyntaxError
    at Object.parse (native)
    at Object.<anonymous> (/var/task/index.js:3:17)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
END RequestId: 8ca0fbd1-eee5-11e5-b9dd-31048a8d5a45
REPORT RequestId: 8ca0fbd1-eee5-11e5-b9dd-31048a8d5a45  Duration: 173.76 ms Billed Duration: 200 ms     Memory Size: 128 MB Max Memory Used: 9 MB

有人能看到问题吗?

我希望lambda获得json并返回它,因此任何查看我的API url的人都会看到Open Weather API的结果

共有1个答案

沈长恨
2023-03-14

您正在将URL传递给JSON。parse(),不是JSON字符串。首先,您需要使用类似http的东西从URL获取JSON数据。get()。也许可以看看这个类似问题的答案:从URL解析JSON数据

 类似资料:
  • 你好,我尝试在其他问题中搜索,但没有一个提到的解决方案,我尝试对我不起作用。 使用命令时: npm启动 我有一个错误: /src/index.js模块生成失败(来自./node_modules/babel-loader/lib/index.js):语法错误:d:/kodilla/projekty/webpack-to-do-app/src/index.js:意外>令牌(6:4) package.j

  • 我在测试机智。ai与fb提供的样品,我运行在以下错误。。。 我对节点和机智很陌生。我使用了初始化并安装节点wit模块。能找个人帮忙吗?

  • 问题出现在(bot)中。这部分代码:

  • 我将错误作为意外标记:(在查询下面,但同样的查询在SQL中运行良好) 我希望有人能帮我。

  • 问题内容: 我刚刚在计算机上安装了MySQL,当我尝试从MySQL Shell创建数据库时,出现此错误: 有人知道为什么会这样吗?MySQL的安装有问题吗? 问题答案: 通过在这里查看该线程,您似乎可以在js模式下使用shell,您可以通过使用switch来将其关闭 https://forums.mysql.com/read.php?10,661192,661203#msg-661203

  • 使用此代码: 我得到了这个eslint错误: 这是我的eslint配置: .... .... 有什么问题吗?