基本背景:
我有一个运行非常简单网站的快速节点服务器。网站的第一页有两个输入(1 个文本,1 个数字)
<input type="text" name="xml_url" id="xml_in" placeholder="Required" />
<input type="number" min="0" name="c2" id="c2_in" placeholder="Required" />
到目前为止,非常简单,用户输入一个 url 和一个数字,我的应用程序构建了一些东西并返回一个文件的链接。
我的节点服务器(基本上)看起来像这样:
app.post('/secondPage', function(req, res){
var url = req.body.xml_url
, c2 = req.body.c2;
//some stuff happens etc...
res.render('finalpage.html', {
foo: c2andsomething
url: newurl
});
我的问题/问题:
我希望能够不使用我的前端。我相信代码基本上会起作用(除了渲染之外,我相信我需要类似的东西
res.send(aJsonResponse); // obviously I will need to build the json
我只是不知道我怎么能伪造这个帖子请求。我在这里画了一个空白。到目前为止,我只尝试过一些声称他们会发送帖子请求等的网站。并尝试在浏览器中输入带有查询字符串的 url,但我的应用程序不接受 GET。
希望这不是太多的漫无边际,但我很想听到一些建议。如果这个问题没有意义,将删除。
编辑:
好吧,所以我似乎总是用这些问题跳枪。我刚刚在控制台中尝试:
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("POST", "http://192.168.1.1:3000/secondPage", true);
xmlhttp.send("foobar");
而且我收到一个 CORS 错误..我想我很快就会在这里弄清楚这一点,如果你有任何建议,我仍然很想听听。
谢谢
编辑2:
所以我能够发送请求并且没有 CORS 问题......但我不确定如何在请求中设置正文。
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("POST", "http://192.168.1.1:3000/secondPage", true);
xmlhttp.send({"xml_in":"I-thought-this-was-the-body"});
但身体是{}
好吧,我使用 cURL 解决了我的问题,所以不是最好的答案,但这是我使用的
curl -d "xml_in=http://google.com&c2=12345" http://192.168.1.1:3000/secondPage