【问题标题】:{EASY} Rapid API returning value Dict error{EASY} 快速 API 返回值字典错误
【发布时间】:2021-10-30 08:58:28
【问题描述】:

我正在使用快速 API 来获取 LinkedIn 数据。这个特殊的 API 使用简单的 HTTPS GET 请求并返回 json。我正在编写这是 Google App Script (Javascript),并在运行测试时返回此错误。

function callLinkedInAPI () {
  // https://rapidapi.com/iscraper/api/linkedin-profiles-and-company-data/ API website
  // https://iscraper.io/docs APi Docs

    var payload = {
    "profile_id": "williamhgates",
    "profile_type": "personal",
    "contact_info": false
    }

  var headers = {
    "contentType": "application/json",
        "x-rapidapi-host": "linkedin-profiles-and-company-data.p.rapidapi.com",
        "x-rapidapi-key": "76db3a1901mshd1518c9ce779bdep1c5920jsn3e0ec4853b66"
      }

  var url = `https://linkedin-profiles-and-company-data.p.rapidapi.com/api/v1/profile-details`

  var requestOptions = {
    'method': "POST",
    'headers': headers,
    'payload': payload,
    'muteHttpExceptions': true,
    'redirect': 'follow'
    };

  var response = UrlFetchApp.fetch(url, requestOptions);
  var json = response.getContentText();
  var data = JSON.parse(json);
  
  console.log(data)

  }

调用 api 时收到此错误

[ { msg: 'value is not a valid dict',
       loc: [Object],
       type: 'type_error.dict' } ]

【问题讨论】:

    标签: javascript google-apps-script rapidapi


    【解决方案1】:

    在标头中使用Content-Type 而不是contentType,并将有效负载作为字符串传递。

    内容类型:

    var headers = {
      "Content-Type": "application/json",
      "x-rapidapi-host": "linkedin-profiles-and-company-data.p.rapidapi.com",
      "x-rapidapi-key": "76db3a1901mshd1518c9ce779bdep1c5920jsn3e0ec4853b66"
    }
    
    var url = `https://linkedin-profiles-and-company-data.p.rapidapi.com/api/v1/profile-details`
    
    var requestOptions = {
      'method': "POST",
      'headers': headers,
      'payload': JSON.stringify(payload),
      'muteHttpExceptions': true,
      'redirect': 'follow'
    };
    

    或将其按原样移动到requestOptions 下(您仍然需要将有效负载作为字符串传递)

    内容类型:

    var headers = {
      "x-rapidapi-host": "linkedin-profiles-and-company-data.p.rapidapi.com",
      "x-rapidapi-key": "76db3a1901mshd1518c9ce779bdep1c5920jsn3e0ec4853b66"
    }
    
    var url = `https://linkedin-profiles-and-company-data.p.rapidapi.com/api/v1/profile-details`
    
    var requestOptions = {
      'contentType':"application/json",
      'method': "POST",
      'headers': headers,
      'payload': JSON.stringify(payload),
      'muteHttpExceptions': true,
      'redirect': 'follow'
    };
    

    输出:

    参考资料:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-08
      • 1970-01-01
      • 2018-01-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多