您现在的位置是:首页 > 电脑 > 

如何使用一个XMLHttpRequest实例格式化request.GET中

2025-07-23 02:31:39
如何使用一个XMLHttpRequest实例格式化request.GET中 目标 我想用故宫包request从一个API端点获取数据。我下面的示例使用XMLHttpRequest()来获取数据。 题 如何将XMLHttpRequest()转换为request.get 示例代码 我下面的OnSIP example提供以下功能: 卷曲例如: curl -X POST \ --dat

如何使用一个XMLHttpRequest实例格式化request.GET中

目标

我想用故宫包request从一个API端点获取数据。我下面的示例使用XMLHttpRequest()来获取数据。

如何将XMLHttpRequest()转换为request.get

示例代码

我下面的OnSIP example提供以下功能:

卷曲例如:

curl -X POST \
--data \
'Action=SessionCreate&Username=john.doe%40example.ip&Password=mysuperpassword' \

的XMLHttpRequest()的例子:

var data = new FormData();
data.append('Action', 'SessionCreate');
data.append('Username', '[email protected]');
data.append('Password', 'mysuperpassword');

var xhr = new XMLHttpRequest();
('POST', '', true);
 = function () {
  cole.log(this.respeText);
}
xhr.send(data);

我试了一下

卷曲

当我把我的凭据到cURL命令,我必须成功,该响应指示<IsValid>true</IsValid>

的node.js

我把cURL例子,用这个cURL to ode.js tool上手。

// Config Settings
ct ipAction = "SessionCreate";
ct ipEmail = encodeURIComponent();
ct ipPassword = ipConfig.password;
ct dataString = "Action=" + ipAction +
                    "&Username=" + ipEmail + 
                    "&Password=" + ipPassword;

cole.log("dataString :", dataString);
ct ipSessionCreateOpti = {
    url: "",
    method: "POST",
    body: dataString
};

exports.getOnsipSessionId = function (request){
    return (new Promise((resolve, reject) => {
        request.get(ipSessionCreateOpti, function (err, _resp, body) {
            if (err) reject(err);
            else {
                cole.log("body :", body);
                resolve(body);
            }
        });
    }).catch(err => cole.log("err:", err)));
};

日志

我看到这个错误在body,但不知道这意味着什么。 Accessor parameter is required, but none was specified.

datastring: Action=SessionCreate&Username=fakename%40jahnelgroup.ip&Password=fakepass

这就是body

<?xml version="1.0" encoding="UTF-8"?>
<Respe
    xmlns="">
    <Context>
        <Action>
            <IsCompleted>false</IsCompleted>
        </Action>
        <Request>
            <IsValid>false</IsValid>
            <DateTime>2019-02-06T15:18:10+00:00</DateTime>
            <Duration>1</Duration>
            <Errors>
                <Error>
                    <Parameter>Action</Parameter>
                    <Code>Accessor.Required</Code>
                    <Message>Accessor parameter is required, but none was specified.</Message>
                </Error>
            </Errors>
        </Request>
        <Session>
            <IsEstablished>false</IsEstablished>
        </Session>
    </Context>
</Respe>
回答如下:

您的要求似乎是一个POST,而不是GET

试试下面的代码片段使用节点重新创建XMLHttpRequest的:

var request = require("request");

var opti = { method: 'POST',
  url: 'https://api.ip/api',
  headers: 
   { 'content-type': 'multipart/form-data;' },
  formData: 
   { Action: 'SessionCreate',
     Username: '[email protected]',
     Password: 'mysuperpassword' } };

request(opti, function (error, respe, body) {
  if (error) throw new Error(error);

  cole.log(body);
});

这是基本的(不包括例如编码),但理论上应该工作。

#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格

本文地址:http://www.dnpztj.cn/diannao/876381.html

相关标签:无
上传时间: 2024-04-14 21:48:31
留言与评论(共有 13 条评论)
本站网友 铜仁美食
3分钟前 发表
Accessor parameter is required
本站网友 黑石礁二手房网
18分钟前 发表
'POST'
本站网友 打假基金
2分钟前 发表
00</DateTime> <Duration>1</Duration> <Errors> <Error> <Parameter>Action</Parameter> <Code>Accessor.Required</Code> <Message>Accessor parameter is required
本站网友 五险一金是什么
16分钟前 发表
but none was specified.</Message> </Error> </Errors> </Request> <Session> <IsEstablished>false</IsEstablished> </Session> </Context> </Respe> 回答如下: 您的要求似乎是一个POST
本站网友 阿凡达变脸器
18分钟前 发表
本站网友 车陂美食
15分钟前 发表
{ Action
本站网友 国妇婴官网
30分钟前 发表
"
本站网友 iceage
28分钟前 发表
而不是GET
本站网友 面部除皱整容
29分钟前 发表
的node.js 我把cURL例子
本站网友 好视力眼贴
24分钟前 发表
body
本站网友 诺奥
14分钟前 发表
'https
本站网友 今天买什么
20分钟前 发表
''