为了账号安全,请及时绑定邮箱和手机立即绑定

node中https使用时请求不成功,似乎url解析有问题

node中https使用时请求不成功,似乎url解析有问题

莫回无 2019-03-13 12:15:47
问题描述:最近在做electron的小开发,在使用node中https模块发起一个https请求时总是报错,我请求的地址是一个公司用于测试的地址,要求使用POST和异步请求,数据格式为json,人家服务接口请求格式就是json最开始使用的是AJAX请求,似乎涉及到跨区请求的问题,请求并没有返回数据。之后尝试了node的https模块,但是请求不成功。url各种尝试。。。都不行!代码贴在下面,跪求各路大神指点,本人小白在此谢过!!!我的代码://这个是用ajax请求的function send_req(serverUrl, req_client_json, successHandler, errorHandler){    $.ajax({          type : "POST",          url : serverUrl,        crossDomain: true,        data : req_client_json,          contentType : "application/json",          dataType : "json",          success : successHandler,        error : errorHandler    });}//然后这个是使用htts请求的function send_req(serverUrl, req_client_json){    var options = {        host: serverUrl,        port: '20682',        path: '/',        method: 'POST',        json: true,        headers: {            'Content-Type': 'application/json',            'Content-Length': req_client_json.length        }    }    const post_req = https.request(options, function(res){        console.log(1111111111111)        res.setEncoding('utf8')        res.on('data', function(chunk){            console.log(chunk);        })        res.on('error', (err)=>{            aletr("Error: " + err)        })    })    post_req.write(req_client_json);    post_req.end();}下面贴下我的报错信息:在使用ajax请求的时候(直接执行了请求error的情况):在使用https请求的时候,起初我把url设置成了一个ip地址,错误如下:应该是请求没有成功,控制台并没有打印一系列的111111111之后,我更改了etc/host文件,将ip地址替换成了一个域名,就是programtest.com,错误信息和使用ip地址相同然后,在ip地址和域名的前面分别加上https://,似乎这么做并不对,然后报错信息是这个:之后有看网上使用url.parse解析的,然后也试了试这种方法,具体的改动就是: //在https请求的参数options中 host: url.parse(serverUrl)然后错误信息如下使用一个ip地址或者域名,在url前面加上https://或者不加都是一样的错误:
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 551 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信