HTTP / 1.1 400错误请求Sabre REST Api

桑迪B

当前正在使用Saber Dev Studio的测试开发人员帐户,并尝试使用其REST Api-Instaflights_Search。

我正在创建身份验证并获得良好的访问令牌,但是当我尝试发送请求时会出现问题。我正在使用curl和php创建标题。

function callRestApi($url,$access_token) {

    $ch = curl_init();

    $header = array();
    $header[] = "Authorization: Bearer " .$access_token;
    $header[] = "Accept: application/json";
    $header[] =  'Content-Type: application/json';

    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
    curl_setopt($ch, CURLOPT_HTTPGET, 1);
    curl_setopt($ch, CURLOPT_VERBOSE, true);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

    $result = curl_exec($ch);
    curl_close($ch);
    return json_decode($result,true);
}


$url = "https://api.test.sabre.com/v1/shop/flights?origin=JFK&destination=LAX&departuredate=2016-05-30&returndate=2016-05-31";

$access_token = callForToken();

$server_response = callRestApi($url,$access_token);

Sabre的响应是:

   array(5) {
     ["status"]=>
     string(12) "NotProcessed"
     ["type"]=>
     string(10) "Validation"
     ["errorCode"]=>
     string(30) "ERR.2SG.CLIENT.INVALID_REQUEST"
     ["timeStamp"]=>
     string(29) "2016-05-19T22:36:51.041-05:00"
     ["message"]=>
     string(60) "Request is invalid: The request should have the JSON payload"
    }

HTTP 1/1请求标头的内容为:

* Hostname was found in DNS cache
*   Trying 151.193.52.94...
* Connected to api.test.sabre.com (151.193.52.94) port 443 (#0)
* successfully set certificate verify locations:
*   CAfile: /etc/pki/tls/certs/ca-bundle.crt CApath: none
* SSL connection using TLSv1.2 / AES256-SHA
* Server certificate:
*    subject: C=US; ST=Texas; L=Southlake; O=Sabre, Inc.; OU=Internet   Services; CN=api.test.sabre.com
*    start date: 2015-02-25 00:00:00 GMT
*    expire date: 2017-03-21 23:59:59 GMT
*    subjectAltName: api.test.sabre.com matched
*    issuer: C=US; O=Symantec Corporation; OU=Symantec Trust Network; CN=Symantec Class 3 Secure Server CA - G4
*    SSL certificate verify ok.
    > GET /v1/shop/flights?origin=JFK&destination=LAX&departuredate=2016-05-30&returndate=2016-05-05&onlineitinerariesonly=n&limit=10&offset=1&eticketsonly=n&sortby=totalfare&order=asc&sortby2=departuretime&order2=asc&pointofsalecountry=US HTTP/1.1
Host: api.test.sabre.com
Authorization: Bearer T1FNEWIhYyxjzQJ/Fh4oPfgkjU4s+R/xAxglSqD2oC4kYcCAnPcIv+bbV9sTu3KHxdpQ+zRKUsTGmpfhQT//Djx+3yDNZUcypKrbjzIzjVJvDPI+PyH5bT4F88Gcse//7hjcrz5sCRXkqwqjb1ceaBhGV2hr0t47XwBcjEvPg2I92FtFsqNw7V8NrcPfBVFxnZAbqESJ+zUQH6mSeaWa1h3Rc04g4szipQhHWDnR+sneH8ePdHKPQaoX3M44YMRvviOV8yEBYwTg**
Accept: application/json
Content-Type: application/json

< HTTP/1.1 400 Bad Request
< Date: Fri, 20 May 2016 03:15:28 GMT
< Content-Type: application/json
< Content-Length: 207
< 
* Connection #0 to host api.test.sabre.com left intact

任何想法,标题可能是什么问题?

于23/05/2016进行编辑,用于在下面构建请求标头的更正版本:

     function callRestApi($url,$access_token) {

      $header2 = array(
      'Authorization : Bearer '.$access_token,
      'Accept : */*'
      );

      $ch = curl_init();
      curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
      curl_setopt($ch, CURLOPT_VERBOSE, true);
      curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
      curl_setopt($ch, CURLOPT_URL, $url);
      curl_setopt($ch, CURLOPT_HTTPHEADER, $header2);
      $result = curl_exec($ch);
      curl_close($ch);
      return json_decode($result,true);
   }
卡卡雷诺

您是否看过Sabre github回购中的php示例代码?

https://github.com/SabreDevStudio/SACS-Php

它使用IntaFlights和curl,因此也许它为您正在测试的API和您的环境提供了一种方法。

如果不为您服务,请随时添加问题。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从 Java 应用程序到 TFS REST API 的 HTTP PATCH 请求获得 400(错误请求)错误

来自分类Dev

使用REST API创建Sonatype Nexus存储库会导致HTTP / 1.1 400错误请求

来自分类Dev

Parse.com REST API错误代码400:从Java HTTP请求到云功能的错误请求

来自分类Dev

结合使用woocommerce rest api v1和http和javascript(非https)

来自分类Dev

如何为Firestore REST API(v1beta1)构建“写入”请求?

来自分类Dev

在rest api上不断收到http错误请求

来自分类Dev

解析推送REST API错误400“错误请求”

来自分类Dev

REST API v1共享限制

来自分类Dev

离子 1 外部 HTTP 请求

来自分类Dev

OAuth,PHP,Rest API和curl发出400错误请求

来自分类Dev

Axios对Firebase Auth REST API的发布请求产生400错误

来自分类Dev

400 错误请求无效动词 SharePoint Rest Api Java

来自分类Dev

连接请求是代号为 1 的 400 错误请求

来自分类Dev

尝试连接到 Sabre API 时出现错误 (400) 错误请求

来自分类Dev

体系结构REST:如何为请求+批准,2个资源或1个资源设计REST API?

来自分类Dev

Firebase Cloud Message 通过 HTTP v1 api 使用主题函数返回 400

来自分类Dev

CURL调用期间Outlook Rest API OAuth2 PHP HTTP错误400

来自分类Dev

HTTP请求:400错误

来自分类Dev

角度:$ http请求给出-1状态

来自分类Dev

所有$ http请求都返回-1

来自分类Dev

使用CN1中的REST API上传到Cloudinary

来自分类Dev

Paypal Rest API在爱尔兰提供-2015年1月?

来自分类Dev

REST API创建的MarkLogic v1 /事务

来自分类Dev

通过REST API从Cognos TM1获取数据

来自分类Dev

PayPal REST API v1的付款问题

来自分类Dev

使用CN1中的REST API上传到Cloudinary

来自分类Dev

. 简单的 1 键 REST API 有什么风险?

来自分类Dev

在HTTP / 1.0请求REST API中省略Accept * / *标头是否是一个错误

来自分类Dev

意外的请求:POST / api / v1 / auth / sign_in预期的POST http:// localhost:3000 / api / v1 / auth / sign_in

Related 相关文章

  1. 1

    从 Java 应用程序到 TFS REST API 的 HTTP PATCH 请求获得 400(错误请求)错误

  2. 2

    使用REST API创建Sonatype Nexus存储库会导致HTTP / 1.1 400错误请求

  3. 3

    Parse.com REST API错误代码400:从Java HTTP请求到云功能的错误请求

  4. 4

    结合使用woocommerce rest api v1和http和javascript(非https)

  5. 5

    如何为Firestore REST API(v1beta1)构建“写入”请求?

  6. 6

    在rest api上不断收到http错误请求

  7. 7

    解析推送REST API错误400“错误请求”

  8. 8

    REST API v1共享限制

  9. 9

    离子 1 外部 HTTP 请求

  10. 10

    OAuth,PHP,Rest API和curl发出400错误请求

  11. 11

    Axios对Firebase Auth REST API的发布请求产生400错误

  12. 12

    400 错误请求无效动词 SharePoint Rest Api Java

  13. 13

    连接请求是代号为 1 的 400 错误请求

  14. 14

    尝试连接到 Sabre API 时出现错误 (400) 错误请求

  15. 15

    体系结构REST:如何为请求+批准,2个资源或1个资源设计REST API?

  16. 16

    Firebase Cloud Message 通过 HTTP v1 api 使用主题函数返回 400

  17. 17

    CURL调用期间Outlook Rest API OAuth2 PHP HTTP错误400

  18. 18

    HTTP请求:400错误

  19. 19

    角度:$ http请求给出-1状态

  20. 20

    所有$ http请求都返回-1

  21. 21

    使用CN1中的REST API上传到Cloudinary

  22. 22

    Paypal Rest API在爱尔兰提供-2015年1月?

  23. 23

    REST API创建的MarkLogic v1 /事务

  24. 24

    通过REST API从Cognos TM1获取数据

  25. 25

    PayPal REST API v1的付款问题

  26. 26

    使用CN1中的REST API上传到Cloudinary

  27. 27

    . 简单的 1 键 REST API 有什么风险?

  28. 28

    在HTTP / 1.0请求REST API中省略Accept * / *标头是否是一个错误

  29. 29

    意外的请求:POST / api / v1 / auth / sign_in预期的POST http:// localhost:3000 / api / v1 / auth / sign_in

热门标签

归档