我需要对api url进行两次ajax post请求。第一个请求返回一些数据为json(password,session,sessionId,itemId)。如何使用ajax post请求响应数据发出另一个ajax post请求?
任何一个可以告诉我如何抓取密码,会话,sessionId,itemId值,并使用它来使另一个Ajax发布请求到相同的API网址?
我的当前代码只获取api响应,但如何在第二个post请求中使用password,session,sessionId,itemId的值?
我试图引用像这样的data.keys.password,data.keys.session,data.items.seasonId,data.items.itemId这样的api数据,并且我得到错误data.keys和data.items是未定义的!
谁能告诉我我做错了什么?
(注:目前,我把数据放到硬编码演示用第POST请求)
AJAX POST请求调用:
function callAjax() {
$.post("https://api-somewebsite.com/process.aspx",
{
name: "galaxy",
itemNum: "123456789"
},
function(data,status){
alert("Data: " + data + "\nStatus: " + status);
// now i want to use api response data to make another ajax post call
$.post("https://api-somewebsite.com/process.aspx",
{
password: "2342432423ledf",
session: "23isaofdfjosidfiedfdd=="
seasonId: "12345",
itemId: "334455"
},
function(data,status){
alert("Data: " + data + "\nStatus: " + status);
});
});
};
<br>
<button onclick="callAjax()">callAjax</button>
API响应(为第一AJAX POST请求),我想引用其项目:
{
"keys": {
"password": "2342432423ledf",
"session": "23isaofdfjosidfiedfdd=="
},
"items": {
"seasonID": 12345,
"itemID": 334455,
}
}
将内部POST请求中的硬编码数据替换为第一个请求的成功函数中的“data”变量时会发生什么?看起来像这将工作,使第二个请求的工作。 – danasilver
感谢您的回复。我试图使用数据,keys.password和data.keys.session,但都给我未定义! – user1788736
什么'数据'(从第一个请求)看起来像当你提醒/记录它? – danasilver