模仿 Github,设计一个博客网站的 API
设计得博客可通过:https://api.firstblog.com进行访问。
网站使用HTTPS协议,引用了大量属于HTTPS需要的请求赋于语义的方法,具体内容如下:
这里的内容引用自老师课程网站给出的指导网页,如果想要查看更加详细的内容,可以点击网页:https://docs.microsoft.com/zh-cn/azure/architecture/best-practices/api-design
curl -u username https://api.firstblog.com
会出现相应的密码输入框,输入密码后,如果密码正确,返回状态码200,成功的登入网站。否则就会返回状态码404,表明登陆失败,可能用户不存在或者密码错误。
通过GET请求获取用户拥有的博客基本信息。
请求:GET /username
具体命令如下:
curl -i 'https://api.firstblog.com/username'
通过GET请求获取博客的具体内容
请求:GET /username/hello
具体命令如下:
curl -i 'https://api.firstblog.com/username/hello'
通过GET请求获取相关博客的标题和链接
请求:GET /username/search?key=hello
具体命令如下:
curl -i 'https://api.firstblog.com/username/search?key=hello'
通过GET请求获取博客评论的具体内容
请求:GET /username/hello/comment
具体命令如下:
curl -i 'https://api.firstblog.com/username/hello/comment'
利用POST命令在服务器新建一个资源,然后上传文章内容和标题以及日期
请求:POST /username/new
具体命令如下:
curl -i 'https://api.firstblog.com/username/new' -d '{"title":"title","content":"content","date":"date"}'
利用POST命令在服务器新建一个资源,然后上传自身的评论内容
请求:POST /username/hello/comment/new
具体命令如下:
curl -c 'https://api.firstblog.com/username/hello/comment/new'
利用PUT命令在服务器替换一个资源,需要上传更新后的文章内容和在文章所在页面。
请求:PUT /username/hello/update
具体命令如下:
curl -i 'https://api.firstblog.com/username/hello/update' -d '{"title":"title","content":"content","date":"date"}'
利用DELETE命令在服务器删除一个资源。
请求如下: DELETE /username/hello/delete
具体命令如下:
curl -i 'https://api.firstblog.com/username/hello/delete'
具体信息可以查看:https://www.infoq.cn/article/designing-restful-http-apps-roth
下面是几个请求通用的三个状态返回码: