getting_started.sh 3.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. #!/bin/bash
  2. echo "Welcome to libhv!"
  3. echo "Press any key to run ..."
  4. echo_cmd() {
  5. echo -e "\n\033[36m$cmd\033[0m"
  6. read -n1
  7. }
  8. run_cmd() {
  9. echo_cmd
  10. $cmd
  11. }
  12. # compile httpd curl
  13. if [ ! -x bin/httpd -o ! -x bin/curl ]; then
  14. cmd="make httpd curl" && echo_cmd
  15. ./configure
  16. make clean
  17. make -j4 httpd curl
  18. fi
  19. # run httpd
  20. processes=$(ps aux | grep -v grep | grep httpd | wc -l)
  21. if [ $processes -lt 1 ]; then
  22. cmd="bin/httpd -c etc/httpd.conf -s restart -d" && run_cmd
  23. fi
  24. ps aux | grep -v grep | grep httpd
  25. # http file service
  26. cmd="bin/curl -v localhost:8080" && run_cmd
  27. # http indexof service
  28. cmd="bin/curl -v localhost:8080/downloads/" && run_cmd
  29. # http api service
  30. cmd="bin/curl -v localhost:8080/paths" && run_cmd
  31. cmd="bin/curl -v localhost:8080/ping" && run_cmd
  32. cmd="bin/curl -v localhost:8080/data" && run_cmd
  33. cmd="bin/curl -v localhost:8080/html/index.html" && run_cmd
  34. cmd="bin/curl -v localhost:8080/get?env=1" && run_cmd
  35. cmd="bin/curl -v localhost:8080/service" && run_cmd
  36. cmd="bin/curl -v localhost:8080/async" && run_cmd
  37. cmd="bin/curl -v localhost:8080/wildcard/test" && run_cmd
  38. cmd="bin/curl -v localhost:8080/echo -d 'hello,world!'" && echo_cmd
  39. bin/curl -v localhost:8080/echo -d 'hello,world!'
  40. cmd="bin/curl -v localhost:8080/query?page_no=1&page_size=10" && run_cmd
  41. cmd="bin/curl -v localhost:8080/kv -H 'Content-Type:application/x-www-form-urlencoded' -d 'user=admin&pswd=123456'" && echo_cmd
  42. bin/curl -v localhost:8080/kv -H 'Content-Type:application/x-www-form-urlencoded' -d 'user=admin&pswd=123456'
  43. cmd="bin/curl -v localhost:8080/json -H 'Content-Type:application/json' -d '{\"user\":\"admin\",\"pswd\":\"123456\"}'" && echo_cmd
  44. bin/curl -v localhost:8080/json -H 'Content-Type:application/json' -d '{"user":"admin","pswd":"123456"}'
  45. cmd="bin/curl -v localhost:8080/form -F 'user=admin' -F 'pswd=123456'" && echo_cmd
  46. bin/curl -v localhost:8080/form -F 'user=admin' -F 'pswd=123456'
  47. cmd="bin/curl -v localhost:8080/upload -d '@LICENSE'" && echo_cmd
  48. bin/curl -v localhost:8080/upload -d '@LICENSE'
  49. cmd="bin/curl -v localhost:8080/upload -F 'file=@LICENSE'" && echo_cmd
  50. bin/curl -v localhost:8080/upload -F 'file=@LICENSE'
  51. cmd="bin/curl -v localhost:8080/test -H 'Content-Type:application/x-www-form-urlencoded' -d 'bool=1&int=123&float=3.14&string=hello'" && echo_cmd
  52. bin/curl -v localhost:8080/test -H 'Content-Type:application/x-www-form-urlencoded' -d 'bool=1&int=123&float=3.14&string=hello'
  53. cmd="bin/curl -v localhost:8080/test -H 'Content-Type:application/json' -d '{\"bool\":true,\"int\":123,\"float\":3.14,\"string\":\"hello\"}'" && echo_cmd
  54. bin/curl -v localhost:8080/test -H 'Content-Type:application/json' -d '{"bool":true,"int":123,"float":3.14,"string":"hello"}'
  55. cmd="bin/curl -v localhost:8080/test -F 'bool=1' -F 'int=123' -F 'float=3.14' -F 'string=hello'" && echo_cmd
  56. bin/curl -v localhost:8080/test -F 'bool=1' -F 'int=123' -F 'float=3.14' -F 'string=hello'
  57. # RESTful API: /group/:group_name/user/:user_id
  58. cmd="bin/curl -v -X DELETE localhost:8080/group/test/user/123" && run_cmd
  59. # show log
  60. cmd="tail -n 50 logs/httpd*.log" && run_cmd
  61. echo -e "\nEnjoy libhv!\n"