你好,我需要一个源代码来访问Sabre,比如和订票API,我已经按下面的方式访问了航班搜索,但我知道我需要一种连接到Soap的方法
我在Sabre网站上阅读了所有文档,并看到了所有Sabre代码示例segment/ https://developer.sabre.com/search?q=CreatePassengerNameRecordRQ
Dim request As HttpWebRequest
Dim response1, response2 As HttpWebResponse
Dim reader, reader2 As StreamReader
Dim Client_ID As String = "***************"
Dim Client_SEC As String = "****************"
Dim url As String = "https://developer.sabre.com/io-docs/getoauth2accesstoken?apiId=793&auth_flow=client_cred&client_id=" + Client_ID + "&client_secret=" + Client_SEC
request = DirectCast(WebRequest.Create(url), HttpWebRequest)
response1 = DirectCast(request.GetResponse(), HttpWebResponse)
reader = New StreamReader(response1.GetResponseStream())
Dim ser As JObject = JObject.Parse(reader.ReadToEnd())
Dim data As List(Of JToken) = ser.Children().ToList
Dim myAccessToken As String = ser("result")("access_token").Value(Of String)()
Dim f As String = From.Text
Dim t As String = too.Text
Dim d1 As String = String.Format("{0:dd-MM-yyyy}", Date1.Text)
Dim d2 As String = String.Format("{0:dd-MM-yyyy}", date2.Text)
Dim re As String = "https://api.test.sabre.com/v1/shop/flights?origin=" & f & "&destination=" & t & "&departuredate=" & d1 & "&returndate=" & d1 & "&onlineitinerariesonly=N&limit=10&offset=1&eticketsonly=N&sortby=totalfare&order=asc&sortby2=departuretime&order2=asc&pointofsalecountry=US"
Dim postReq As HttpWebRequest = DirectCast(WebRequest.Create(re), HttpWebRequest)
postReq.Method = "GET"
postReq.ContentType = "application/x-www-form-urlencoded"
Dim header As String = "Authorization: Bearer " + myAccessToken
postReq.Headers.Add(header)发布于 2018-03-30 02:14:26
访问Sabre SOAP系统并不像航空公司Rest服务那样容易。然而,没有任何SOAP服务像Rest那样简单,这就是为什么每个人都在转换。也就是说,访问soap是一个分两个阶段的过程。首先,您有发送登录凭据以获得一个“二进制安全令牌”,该令牌随后将在每个后续SOAP请求的头中被发送回。另外,如果您还没有意识到访问PNR需要一个特殊级别的安全性,这与您的标准Sabre访问级别不同。此外,还有一个成本和额外的合同,必须签署。您生成的每个PNR都有您必须支付的相关成本。一旦您使用Sabre获得PNR访问设置,我建议您使用.NET构建器为WSDL文件构建类。这是内置到Visual和构建类,将照顾访问层,您需要与Sabre交谈。这样做很好,可以让您简单地跟踪文档,而不必担心如何发送或如何管理响应。它们只是作为您可以轻松管理的类进入。
https://stackoverflow.com/questions/43966102
复制相似问题