当前位置:   article > 正文

python 服务请求flask;grequest并发请求服务_python并发向服务端发送请求flask

python并发向服务端发送请求flask

目录

1、get-post客户端、服务器端code demo

2、grequet并发请求


1、get-post客户端、服务器端code demo

  1. # coding=utf-8
  2. import flask
  3. import requests
  4. data = {'query': u'急性化脓性牙髓炎能治好吗 如何治疗急性化脓性牙髓炎'}
  5. # 客户端:get请求
  6. r = requests.get("https://xxx.com/clf/predict",
  7. params=data)
  8. if r.status_code == 200
  9. print r.text
  10. # 服务器端:对get请求参数的解析
  11. # 没有解析到query参数的话,设置默认为None
  12. # text = flask.request.args.get('query', None)
  13. # 客户端:post请求
  14. # r = requests.post("https://xxx.com/clf/clf3_predict",
  15. # json=data)
  16. # print r.text
  17. # 服务器端:对post请求参数的解析
  18. # input_data = request.get_data(as_text=True)
  19. # text = json.loads(input_data)["query"]

2、grequet并发请求

参考博文:

​​Python使用grequests并发发送请求 - 韩志超 - 博客园   

个人踩坑

  1. # coding=utf-8
  2. import grequests
  3. req_list = [
  4. grequests.get(u"http:/xxxx.baidu.com:8259/xxxx/xxx?\
  5. query={}&plan_name=department".format(text)),
  6. grequests.post("https://127.0.0.1:8001/business_clf/predict",json=data)
  7. ]
  8. res_list = grequests.map(req_list)
  9. print(res_list[1].text)
  10. # 踩坑点
  11. # 1、请求本地接口,使用http前缀url,正常返回,而使用https前缀挂了?
  12. # 2、通过flask启动一个app1,其中包含两个接口:/xxx_api/predict1,/xxx_api/predict2,
  13. # 在接口app1的predict1中是无法调用app1的predict2服务的。需要另启一个app2来部署好predict2,
  14. # 然后用app1的predict1来调用。
  15. # coding=utf-8
  16. import flask
  17. app = flask.Flask(__name__)
  18. service_prefix = "/business_clf"
  19. @app.route(service_prefix + "/hello", methods=['GET', 'POST'])
  20. def hello_world():
  21. """
  22. 测试使用
  23. """
  24. return "welcome to business classification !!!"

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/172546
推荐阅读
相关标签
  

闽ICP备14008679号