在使用UpdateReservationRQ SOAP API添加备注时,如果文本包含冒号,则会返回错误。有没有办法让RQ中的冒号被接受?
RQ:
<v1:UpdateReservationRQ Version="1.18.0">
<v1:RequestType commitTransaction="false">Stateful</v1:RequestType>
<v1:ReturnOptions IncludeUpdateDetails="true" RetrievePNR="true" ReturnLocator="true">
<v1:ViewName>Full</v1:ViewName>
<v1:ResponseFormat>STL</v1:ResponseFormat>
</v1:ReturnOptions>
<v1:ReservationUpdateList>
<v1:ReservationUpdateItem UpdateId="u4">
<v1:RemarkUpdate id="4" type="REG" op="C">
<v1:RemarkText>Baggage Claim WI1MCJAW created on 2018-11-30T08:30:22Z</v1:RemarkText>
</v1:RemarkUpdate>
</v1:ReservationUpdateItem>
<v1:ReceivedFrom>
<v1:AgentName>NT3.0</v1:AgentName>
</v1:ReceivedFrom>
</v1:ReservationUpdateList>
</v1:UpdateReservationRQ>
RS:
<stl18:UpdateReservationRS xmlns:or112="http://services.sabre.com/res/or/v1_12" xmlns:ns4="http://webservices.sabre.com/pnrconn/ReaccSearch" xmlns:raw="http://tds.sabre.com/itinerary" xmlns:ns6="http://services.sabre.com/res/orr/v0" xmlns:stl18="http://webservices.sabre.com/pnrbuilder/v1_18">
<stl18:Success>FALSE</stl18:Success>
<stl18:Warnings>
<stl18:Warning>
<stl18:Message>Partial Error</stl18:Message>
</stl18:Warning>
</stl18:Warnings>
<stl18:Errors>
<stl18:Error UpdateId="u4">
<stl18:Code>500900</stl18:Code>
<stl18:Message>.FRMT</stl18:Message>
</stl18:Error>
</stl18:Errors>
<stl18:Results>
<stl18:UpdateResult UpdateId="U4" Status="FAILURE">
<stl18:Item op="C"/>
</stl18:UpdateResult>
</stl18:Results>
</stl18:UpdateReservationRS>
答案 0 :(得分:2)
事实证明,在Saber的备注行上不允许冒号(:)。解决方案是切换到其他允许的字符。
答案 1 :(得分:0)
由于很多人可能会遇到这种情况,因此可以在here中找到Sabre中允许的字符集(自18/11/12起有效)。此外,某些字段允许使用特定字符-电子邮件的PE字段允许使用@符号,而Sabre的其余部分则不允许。 Imgur链接中的所有奇怪的Sabre字符也都位于下面,该链接可能比上面的超链接更稳定。