微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将 amadeus API 与 Spring Boot 结合使用

如何解决将 amadeus API 与 Spring Boot 结合使用

我正在尝试将数据发送到 Amadeus api 服务。 我有我正在调用的 Amadeus docker。 为此,我必须访问 http://localhost:5000/subcribe 当我使用后面的方法执行此操作时,它返回 500 错误。 问题是我也从邮递员那里试过,我也有同样的错误

分享了我的方法

@RequestMapping("/subscribir")
    private void postSubscriber(Formulario formulario) throws URISyntaxException{
    
        URI url = new URI("http://localhost:5000/subscribe");
        String[] inputData = {"{'name': 'John','phone': '1234','departuredate': '2020-11-05','carrier': 'AF','flightnumber': '178'}"};
        RestTemplate restTemplate = new RestTemplate();
        
        restTemplate.postForLocation(url,inputData);
        
    }

这是 Spring 方法代码,我将数据作为字符串发送,并在 JSON 内部发送数据,因为我曾尝试直接使用 JSON 执行此操作,但发生了同样的事情。

这是我创建的 Docker 镜像中的内容,它接收通过 / subscribe 传入的内容

import flask
import paho.mqtt.client as mqtt

app = flask.Flask(__name__)

client = None

@app.route('/subscribe',methods= ['POST'])
def subscribe():
    """
    Payload example:

    {
      "flight": {
        "carrierCode": "LH","flightNumber": "193","scheduledDepartureDate": "2020-10-20"
      },"user": {
        "userName": "John Smith","phoneNumber": "+13451235"
      }
    }
    """
    form_dict = flask.request.form.to_dict()

    client.publish("flight/queue",str(
        {
            'flight': {
                'carrierCode':form_dict['carrier'],'flightNumber':form_dict['flightnumber'],'scheduledDepartureDate':form_dict['departuredate']
            },'user': {
                'userName': form_dict['name'],'phoneNumber':form_dict['phone']
            }
        }))

    return flask.send_from_directory('static','confirmation.html')

@app.route("/")
def home():
    return flask.send_from_directory('static','index.html')

if __name__ == '__main__':
    client = mqtt.Client()
    client.connect('broker')
    client.loop_start()

    app.run(host='0.0.0.0')

代码是 Docker 映像中方法内部的内容。 如果效果很好,我应该在 amadeus API 中跟踪特定航班,以防延误,我会向我指定的电话号码发送短信。 当我从浏览器执行此操作时,输入 ** http://localhost:5000/subcribe** 会向我发送一个小表单,在那里执行相同操作,当我提交时,它会将我发送到另一个 html,它告诉我航班已得到证实。在 docker 控制台中,它显示为 POST 200,而从邮递员或我的背上执行此操作时指示错误 5000

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。