You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Postman请求正常,VB.NET(RestSharp 106.15.0.0)调用报客户端内部错误

使用RestSharp(VB.NET)调用API报错,Postman可正常运行

问题概述

Postman发送请求能正常执行,但通过VB.NET的RestSharp类库(版本106.15.0.0)直接调用时返回客户端错误。

错误信息

<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"><env:Body><env:Fault><faultcode>env:Client</faultcode><faultstring>Internal Error (from client)</faultstring></env:Fault></env:Body></env:Envelope>

请求头代码

request.AddHeader("Content-Type", "application/json")
request.AddHeader("Accept", "application/json")
request.AddHeader("X-Client-Id", "78a7babff8feb0aed964113c867288b7")
request.AddHeader("Authorization", "Bearer xxxx")
request.AddHeader("Connection", "keep-alive")
request.AddHeader("Content-Length", 1420?)

JSON请求体

{
    "billNumber": "R2LEH003776X",
    "internalInvoiceNumber": "6666",
    "paymentMethod": "s",
    "invoiceIssueDate": "2024-05-11",
    "invoiceDueDate": "2024-05-12",
    "invoiceDescription": "",
    "billerVATNumber": 333,
    "companyName": "",
    "companyRegistrationNumber": 1234567890,
    "consumerEmail": "xx@xx.dd",
    "consumerMobile": "",
    "customerVATNumber": "",
    "buildingNumber": 4562,
    "additionalNumber": 7122,
    "street": "INDUSTRIAL STREET",
    "district": "",
    "postalCode": 12333,
    "city": "",
    "province": "",
    "country": "",
    "totalBeforeVAT": 1000.92,
    "totalVAT": 150.14,
    "grandTotal": 1151.06,
     "item":[
        {
          "invoiceLineSerialNo": 1,
          "itemCode": 100,
          "itemDescriptionArabic": "container BGHJ8777",
          "itemDescriptionEnglish": "",
          "unitOfMeasureArabic": "Unit",
          "unitOfMeasureEnglish": "",
          "itemPrice": 500.4586,
          "quantity": 2,
          "lineItemAmount": 1000.92,
          "lineItemDiscount": 0,
          "lineItemDiscountAmount": 0.0,
          "lineItemAmountAfterDiscount": 1000.92,
          "lineItemVAT": 15,
          "lineItemTotalVAT": 150.14,
          "lineItemTotal": 1151.06
        }
    ]
}

排查解决建议

  • 移除手动设置的Content-Length头:RestSharp会自动计算并设置请求体长度,手动指定的数值(还带问号)大概率和实际请求体长度不匹配,直接删掉request.AddHeader("Content-Length", 1420?)这行代码。
  • 检查JSON序列化逻辑:不要手动拼接JSON字符串,优先用request.AddJsonBody(yourModelObject)让RestSharp自动序列化,避免格式或编码错误;如果必须用字符串,用request.AddParameter("application/json", jsonString, ParameterType.RequestBody)明确指定参数类型。
  • 确认请求方法一致:核对Postman使用的请求方法(POST/PUT等),确保RestSharp代码里的请求方法完全匹配,比如client.Post(request)或client.Put(request)。
  • 升级RestSharp版本:106.15.0是较老的版本,存在一些序列化和请求头处理的已知问题,升级到最新稳定版能解决不少兼容性问题。
  • 对比请求细节:用抓包工具(比如Fiddler)分别捕获Postman和VB.NET代码的请求,对比请求头、请求体的字节内容,找出差异点。

内容的提问来源于stack exchange,提问作者adelaraby

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 20:34:58