You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Node.js调用简单API返回undefined问题求助

问题分析与解决方案

嘿,我来帮你梳理下代码里的问题,一步步解决获取market_ask失败的情况!

1. 请求调用方式的错误

你把API的主域名和接口路径拆分到了open和send方法里,这不符合XMLHttpRequest的使用规则:

  • open方法需要传入完整的请求URL,同时指定请求方法;
  • send方法对于GET请求来说,不需要传入任何参数(或者传null即可)。

2. 响应解析方式错误

这个API返回的是JSON格式数据,不是XML,所以不能直接用responseXML去读取。你需要先通过responseText获取响应文本,再用JSON.parse()解析成JavaScript对象,才能访问里面的属性。

修正后的代码

var XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest;
var xhr = new XMLHttpRequest();
// 传入完整的接口URL,指定GET请求方法
xhr.open("GET", "https://api.quoine.com/products/1", false);
// GET请求无需传参,直接发送
xhr.send(null);

// 解析JSON格式的响应内容
var responseData = JSON.parse(xhr.responseText);
// 访问目标属性market_ask
console.log(responseData.market_ask);

额外小提示

  • 你可以先打印完整的响应数据console.log(responseData),确认返回的结构和API文档描述一致,这样能更快排查属性访问的问题;
  • 同步请求(open第三个参数设为false)虽然能运行,但在Node.js里更推荐用异步模式(设为true),通过onload事件处理响应,避免阻塞进程。

内容的提问来源于stack exchange,提问作者Opzeeland

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 04:40:26