You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Sabre Geosearch:如何在GetHotelAvailRQ请求中使用多边形搜索酒店

Sabre Geosearch:如何在GetHotelAvailRQ请求中使用多边形搜索酒店

嘿,我来帮你搞定这个Sabre API多边形搜索酒店的问题!你当前的请求用的是基于参考点+半径的地理搜索,要换成多边形搜索,只需要修改<GeoSearch>节点里的内容,用<Polygon>标签替代原来的<GeoRef>就可以了。

Sabre的GetHotelAvailRQv3.0.0版本支持多边形地理搜索,具体来说,你需要在<GeoSearch>下定义一个<Polygon>节点,然后在里面添加多个<Position>标签来指定多边形的顶点(至少需要3个顶点才能构成有效多边形)。

下面是修改后的完整请求示例,我保留了你原来的其他参数,只替换了地理搜索部分:

{{header}}

<GetHotelAvailRQ xmlns="http://services.sabre.com/hotel/avail/v3_0_0" version="3.0.0">
    <SearchCriteria OffSet="1" SortBy="TotalRate" SortOrder="ASC" PageSize="200" >
        <GeoSearch>
            <!-- 替换原来的GeoRef为Polygon节点 -->
            <Polygon>
                <!-- 多边形顶点1:纬度+经度 -->
                <Position Latitude="40.7128" Longitude="-74.0060"/>
                <!-- 多边形顶点2 -->
                <Position Latitude="40.7308" Longitude="-73.9973"/>
                <!-- 多边形顶点3 -->
                <Position Latitude="40.7209" Longitude="-73.9864"/>
                <!-- 可以继续添加更多顶点,建议按顺时针/逆时针顺序排列,避免交叉 -->
            </Polygon>
        </GeoSearch>
        <RateInfoRef CurrencyCode="USD" BestOnly="2" PrepaidQualifier="IncludePrepaid">
            <StayDateRange StartDate="{{start_date}}" EndDate="{{short_end_date}}"/>
        <!-- 这里保留你原来的其他请求内容 -->
        ...
    </SearchCriteria>
</GetHotelAvailRQ>

一些关键注意事项:

  • 顶点顺序:请确保多边形的顶点按顺时针或逆时针的顺序排列,避免出现自交叉的情况,否则API可能返回错误或不准确的结果。
  • 顶点数量:至少需要3个顶点,Sabre通常建议顶点数量不要过多(比如不超过10个),否则可能影响请求性能或被API限制。
  • 坐标格式:使用十进制的经纬度值(比如纬度范围-90到90,经度范围-180到180),不要用度分秒格式。
  • 替代关系:<Polygon>和<GeoRef>是互斥的,同一请求里只能用其中一种地理搜索方式,不能同时存在。

这样修改后,你的请求就会基于你定义的多边形区域来搜索可用酒店了。

备注:内容来源于stack exchange,提问作者Vijay Khilnani

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.17 10:49:32