V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
liugezhou
V2EX  ›  Node.js

服务器部署的 node 服务,为什么 postman 请求不了

  •  
  •   liugezhou · 137 天前 · 2326 次点击
    这是一个创建于 137 天前的主题,其中的信息可能已经有所发展或是发生改变。

    遇到一个非常诡异的问题,还请各位大佬指点

    在阿里云服务器上用 pm2 部署了一个 node 项目。 本地的一个 vue 代码直接去访问这个 api.xxx.xxxx 的接口可以正常访问通。

    但是用 postman 去访问这个接口的时候,访问不通,postman 页面:Could not get response

    这是什么原因,有遇到过相同问题的吗?

    23 条回复    2024-08-08 16:05:18 +08:00
    FaustY
        1
    FaustY  
       137 天前
    条件太少了,可能代理问题、或者 postman 请求拼的不对吧
    FaustY
        2
    FaustY  
       137 天前
    可以用 postman 你有问题的请求,生成一个 fetch 的代码,去你 Vue 的页面下执行一下,看看是不是报错,报错了大概率 postman 请求拼的不对。
    Dolov
        3
    Dolov  
       137 天前
    有没有可能是 vue 项目,中配置的 proxy 把请求路径转化了
    liugezhou
        4
    liugezhou  
    OP
       137 天前
    @Dolov 还是很诡异,浏览器直接输入 api.xxxx 这个接口地址是有返回的,本地项目也可以直接访问,就是在 postman 中就没有响应,我的 ngxin 配置和 ssl 配置都是新的,难道是因为 ssl 原因吗
    liugezhou
        5
    liugezhou  
    OP
       137 天前
    @FaustY 请求都对,就是没有反应,还没找到是什么原因。。
    liugezhou
        6
    liugezhou  
    OP
       137 天前
    我用 apifox 去访问这个接口也是可以通的,就 postman 不可以。。。
    catinsides
        7
    catinsides  
       137 天前
    都转成 curl 命令对比一下
    airycanon
        8
    airycanon  
       137 天前
    Postman 有没有关闭 SSL certificate verification ?
    liugezhou
        9
    liugezhou  
    OP
       137 天前
    @airycanon 关闭了的
    liugezhou
        10
    liugezhou  
    OP
       137 天前
    @catinsides 用 curl 在服务器上执行返回是正确的,本地命令后执行,
    curl -v POST https://api.xxx/login \
    -H "Content-Type: application/json" \
    -d '{"username":"test", "password":"test"}'

    直接返回了这个错误
    * Could not resolve host: POST
    * Closing connection
    curl: (6) Could not resolve host: POST
    * Host api.yxdjjz.cn:443 was resolved.
    * IPv6: (none)
    * IPv4: 47.95.68.15
    * Trying 47.95.68.15:443...
    * Connected to api.yxdjjz.cn (47.95.68.15) port 443
    * ALPN: curl offers h2,http/1.1
    * (304) (OUT), TLS handshake, Client hello (1):
    * CAfile: /etc/ssl/cert.pem
    * CApath: none
    * Recv failure: Connection reset by peer
    * LibreSSL/3.3.6: error:02FFF036:system library:func(4095):Connection reset by peer
    * Closing connection
    curl: (35) Recv failure: Connection reset by peer
    liugezhou
        11
    liugezhou  
    OP
       137 天前
    @catinsides 本地浏览器和本地项目都是可行的,curl 本地命令后就出现这个问题了
    liugezhou
        12
    liugezhou  
    OP
       137 天前
    突然想到,ssl 证书是申请的个人免费版本,难道跟这个有关系?
    siweipancc
        13
    siweipancc  
       137 天前 via iPhone
    更新下客户端证书
    liugezhou
        14
    liugezhou  
    OP
       137 天前
    @siweipancc postman 里面添加个人证书吗?直接是关闭证书校验了,我觉得是我配置的有问题,但是又能访问,,,
    ik
        15
    ik  
       137 天前 via iPhone
    @liugezhou #10
    curl -v -x POST ....
    ik
        16
    ik  
       137 天前 via iPhone
    POST 这个参数删掉应该也成
    amlee
        17
    amlee  
       137 天前
    curl -v -k -X POST https://api.xxx/login \
    -H "Content-Type: application/json" \
    -d '{"username":"test", "password":"test"}'
    siweipancc
        18
    siweipancc  
       137 天前
    你用北京阿里云没做备案? powershell7 执行下代码可以更直观看到原因
    `Invoke-WebRequest -Method GET -Uri http://api.yxdjjz.cn/login -SkipHttpErrorCheck -OutFile res.html && Invoke-Item res.html`
    liugezhou
        19
    liugezhou  
    OP
       137 天前
    @siweipancc 好像就是因为域名没备案的原因 感谢感谢🙏
    githmb
        20
    githmb  
       136 天前
    以为是 Bug ,结果是天朝的 Feature (
    liugezhou
        21
    liugezhou  
    OP
       136 天前 via iPhone
    @githmb 比较诡异的是 因为浏览器请求可以正常访问 😄
    就没有往备案这方面去想
    julyclyde
        22
    julyclyde  
       135 天前
    @liugezhou 既然没备案,那浏览器凭啥是成功的呢??
    liugezhou
        23
    liugezhou  
    OP
       135 天前 via iPhone
    @julyclyde 是啊 凭啥,客服说是因为不稳定什么因素
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2185 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 01:33 · PVG 09:33 · LAX 17:33 · JFK 20:33
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.