我为EnhancedAirBookRQ使用了 BinarySecurityToken ,但我收到了USG_AUTHORIZATION_FAILED
。我为BargainFinderMaxRQ使用了相同的标记并且它有效。我应该为here提供的序列获取另一组测试凭据吗?
请求:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:sec="http://schemas.xmlsoap.org/ws/2002/12/secext"
xmlns:mes="http://www.ebxml.org/namespaces/messageHeader"
xmlns:ns="http://www.opentravel.org/OTA/2003/05">
<soapenv:Header>
<sec:Security>
<sec:BinarySecurityToken>--Token--</sec:BinarySecurityToken>
</sec:Security>
<mes:MessageHeader>
<mes:From>
<mes:PartyId type="urn:x12.org:IO5:01">from</mes:PartyId>
</mes:From>
<mes:To>
<mes:PartyId type="urn:x12.org:IO5:01">ws</mes:PartyId>
</mes:To>
<mes:CPAId>--CPAId--</mes:CPAId>
<mes:ConversationId>eservices@sabre.com</mes:ConversationId>
<mes:Service mes:type="sabreXML">sabreXML</mes:Service>
<mes:Action>EnhancedAirBookRQ</mes:Action>
<mes:MessageData>
<mes:MessageId>00000</mes:MessageId>
<mes:Timestamp>233</mes:Timestamp>
</mes:MessageData>
<mes:Description xml:lang="en-US">Testing</mes:Description>
</mes:MessageHeader>
</soapenv:Header>
<soapenv:Body>
<EnhancedAirBookRQ version="3.7.0" HaltOnError="true">
<OTA_AirBookRQ>
<OriginDestinationInformation>
<FlightSegment DepartureDateTime="2016-11-15T10:05:00" FlightNumber="241" NumberInParty="2"
ResBookDesigCode="F" Status="NN">
<DestinationLocation LocationCode="ATL"/>
<MarketingAirline Code="US" FlightNumber="241"/>
<OriginLocation LocationCode="LAS"/>
</FlightSegment>
</OriginDestinationInformation>
</OTA_AirBookRQ>
</EnhancedAirBookRQ>
</soapenv:Body>
响应:
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<soap-env:Header>
<eb:MessageHeader eb:version="1.0" soap-env:mustUnderstand="1"
xmlns:eb="http://www.ebxml.org/namespaces/messageHeader">
<eb:From>
<eb:PartyId eb:type="URI">ws</eb:PartyId>
</eb:From>
<eb:To>
<eb:PartyId eb:type="URI">from</eb:PartyId>
</eb:To>
<eb:CPAId>--CPAId--</eb:CPAId>
<eb:ConversationId>eservices@sabre.com</eb:ConversationId>
<eb:Service eb:type="sabreXML">sabreXML</eb:Service>
<eb:Action>ErrorRS</eb:Action>
<eb:MessageData>
<eb:MessageId>2308814425665870610</eb:MessageId>
<eb:Timestamp>2016-11-08T11:49:26</eb:Timestamp>
<eb:RefToMessageId>00000</eb:RefToMessageId>
</eb:MessageData>
</eb:MessageHeader>
<wsse:Security xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext">
<wsse:BinarySecurityToken valueType="String" EncodingType="wsse:Base64Binary">--Token--</wsse:BinarySecurityToken>
</wsse:Security>
</soap-env:Header>
<soap-env:Body>
<soap-env:Fault>
<faultcode>soap-env:Client.AuthorizationFailed</faultcode>
<faultstring>Authorization failed</faultstring>
<detail>
<StackTrace>com.sabre.universalservices.base.security.AuthorizationException:
errors.authorization.USG_AUTHORIZATION_FAILED
</StackTrace>
</detail>
</soap-env:Fault>
</soap-env:Body>
答案 0 :(得分:1)
您是否有API协议?您的凭据看起来没有合适的授权来使用该服务。
如果您有合同,我建议您联系服务台,以便他们修改您的凭据。