Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法在Sabre的Create PNR(REST API)中处理无状态事务_Rest_Api_Sabre - Fatal编程技术网

无法在Sabre的Create PNR(REST API)中处理无状态事务

无法在Sabre的Create PNR(REST API)中处理无状态事务,rest,api,sabre,Rest,Api,Sabre,我使用RESTAPI并遵循Sabre的 步骤1:使用特价搜索器Max API购买航班 步骤2:预订一个或多个航段,添加所有必需的信息 创建乘客姓名记录(PNR),并使用 创建乘客姓名记录API 我可以检索廉价搜索器Max(步骤1)数据,但我无法创建乘客姓名记录。它总是返回无法处理无状态事务。请重试。错误 这是有效载荷信息 请求数据 { “CreatePassengerNameRecordQ”:{ “版本”:“2.3.0”, “目标城市”:“**”, “haltOnAirPriceError”:

我使用RESTAPI并遵循Sabre的

步骤1:使用特价搜索器Max API购买航班

步骤2:预订一个或多个航段,添加所有必需的信息 创建乘客姓名记录(PNR),并使用 创建乘客姓名记录API

我可以检索廉价搜索器Max(步骤1)数据,但我无法创建乘客姓名记录。它总是返回
无法处理无状态事务。请重试。
错误


这是有效载荷信息

请求数据
{
“CreatePassengerNameRecordQ”:{
“版本”:“2.3.0”,
“目标城市”:“**”,
“haltOnAirPriceError”:错误,
“TravelCineraryAddInfo”:{
“代理信息”:{
“地址”:{
“地址行”:“佩剑旅行”,
“城市名称”:“南湖”,
“国家代码”:“美国”,
“PostalCode”:“76092”,
“StateCountyProv”:{
“状态代码”:“TX”
},
“StreetNmbr”:“SABRE DRIVE 3150”
},
“票务”:{
“票证类型”:“7TAW”
}
},
“CustomerInfo”:{
“联系人号码”:{
“联系人号码”:[
{
“名称编号”:“1.1”,
“电话”:“817-555-1212”,
“PhoneUseType”:“H”
}
]
},
“人名”:[
{
“名称编号”:“1.1”,
“乘客类型”:“ADT”,
“吉文纳姆”:“约翰”,
“姓”:“托利弗”
}
]
}
},
“AirBook”:{
“哈尔顿状态”:[
{
“代码”:“HL”
},
{
“代码”:“KK”
},
{
“代码”:“LL”
},
{
“代码”:“NN”
},
{
“代码”:“否”
},
{
“代码”:“UC”
},
{
“代码”:“美国”
}
],
“原始目的信息”:{
“FlightSegment”:[
{
“ArrivalDateTime”:“2020-03-24T08:48:00T00:00:00”,
“出发日期时间”:“2020-03-24T08:48:00T00:00:00”,
“航班号”:“,
“第三方”:“1”,
“ResBookDesigCode”:“Y”,
“状态”:“NN”,
“目的地”:{
“位置代码”:”
},
“市场路线”:{
“代码”:“,
“航班号”:”
},
“原始位置”:{
“位置代码”:”
}
},
{
“ArrivalDateTime”:“2020-03-24T08:48:00T00:00:00”,
“出发日期时间”:“2020-03-24T08:48:00T00:00:00”,
“航班号”:“,
“第三方”:“1”,
“ResBookDesigCode”:“Y”,
“状态”:“NN”,
“目的地”:{
“位置代码”:”
},
“市场路线”:{
“代码”:“,
“航班号”:”
},
“原始位置”:{
“位置代码”:”
}
}
]
},
“重新播放保留”:{
“NumAttempts”:10,
“等待间隔”:300
}
},
“航空价格”:[
{
“PriceRequestInformation”:{
“保留”:正确,
“可选限定符”:{
“FOP_限定词”:{
“BasicFOP”:{
“类型”:“CK”
}
},
“PricingQualifiers”:{
“乘客类型”:[
{
“代码”:“0”,
“数量”:“1”
}
]
}
}
}
}
],
“特殊要求详情”:{
“备注”:{
“RemarkInfo”:{
“FOP_备注”:{
“类型”:“检查”
}
}
},
“特殊服务”:{
“特殊服务信息”:{
“安全飞行”:[
{
“人名”:{
“出生日期”:“2009-05-14”,
“性别”:“F”,
“名称编号”:“2.1”,
“GivenName”:“mim”,
“姓”:“汗”
},
“段号”:“A”
}
],
“服务”:[
{
“人名”:{
“名称编号”:“2.1”
},
“SSR_代码”:“CHLD”,
“文本”:“2007年5月1日”
}
]
}
}
},
“后处理”:{
“结束交易”:{
“来源”:{
“接收自”:“SP WEB”
}
},
“重新播放保留”:{
“等待间隔”:100
}
}
}
}
响应数据
{
“错误代码”:“ERR.SP.PROVIDER\u ERROR”,
“消息”:“无法处理无状态事务。请重试。”,
“状态”:“不完整”,
“类型”:“应用程序”,
“时间戳”:“2020-03-20T01:01:30-05”
}

您很幸运,因为我能够仅根据时间戳跟踪此特定事务

以后考虑发送以下HTTP报头:

Conversation-ID: ${some.unique.identifier.specific.per.each.request}
并把它传下去,这样刀剑队就可以毫无问题地追踪到它!(就我个人而言,在运行测试时,我会为每个请求生成一个新的UUID。)

通常我会建议联系Sabre支持部门来处理此类错误。 您使用的Sabre帐户似乎处于非活动状态,我建议您联系该团队以启用您的测试帐户

这条消息背后的原因是,大多数机构的时间稍微超过了他们的TAM池(会话限制),因此等待一点并重新尝试帮助,我们也不希望在Sabre中公开内部安全实现。

在这种情况下,返回到承载CreatePassengerNameRecordRQ的应用程序的异常的结束部分实际上是:

错误。