restful風格介面與http協議狀態表述

2021-10-02 17:45:15 字數 2048 閱讀 4950

rest是面向資源的(名詞)

rest通過uri暴露資源時不要再uri**現動詞

象是這樣 get /api/dogs/

用http方法體現對資源的操作

·get方法獲取資源

.post方法新增資源

.put方法修改資源

.delete方法刪除資源

http狀態碼

通過http狀態碼體現動作的結果,不要自定義

200 ok

400 錯誤請求(像是使用者輸入錯誤)

500 系統內部發生錯誤(像是系統自己**的錯誤)

get方法和查詢引數不應該改變資料

改變資料交給post put delete

使用複數名詞

/dogs而不是/dog

複雜資源關係表示式

/cars/711/drivers 返回使用car711號的所有司機

/cars/711/drivers/4 返回使用car711的所有司機中的四號司機

高階用法::hateoas

超**所謂應用狀態的引擎,restful api最好做到返回結果中提供鏈結,連向其他api方法,使得 使用者不查文件也知道下一步做什麼

為集合提供過濾 排序 選擇 和分頁等功能

版本化你的api

在請求前面加上api版本

符合標準的**

package com.caohao.bootlearn.model;

public class article

public void setid(int id)

public string getname()

public void setname(string name)

}

package com.caohao.bootlearn.model;

import lombok.getter;

import lombok.setter;

import lombok.tostring;

@setter

@getter

@tostring

public class ajaxresponse

public static ajaxresponse success()

public static ajaxresponse requestfalse(object data)

public static ajaxresponse requestfalse()

}

package com.caohao.bootlearn.controller;

import com.caohao.bootlearn.model.ajaxresponse;

import com.caohao.bootlearn.model.article;

import lombok.extern.slf4j.slf4j;

import org.springframework.web.bind.annotation.*;

@slf4j

@restcontroller

public class restfultestcontroller

public ajaxresponse deletearticle(@pathvariable int id)

public ajaxresponse updatearticle(@requestbody article article,@pathvariable int id)

public ajaxresponse getarticle(int id)

}

**測試

介面測試 RESTful風格介面

restful架構是一種介面設計架構風格,而不是標準,只是提供了一組設計原則。http 為我們http協議的訪問頭標準 埠號 為我們伺服器內專案訪問的指定編號 專案名稱 版本 可選 3.3 http請求方法 3.4 響應狀態 客戶端請求服務求後,伺服器響應給客戶端的狀態碼。3.5 狀態碼集合彙總 序...

restful風格的介面

api與使用者的通訊協議,總是使用https協議。應該盡量將api部署在專用網域名稱之下。如果確定api很簡單,不會有進一步擴充套件,可以考慮放在主網域名稱下。應該將api的版本號放入url。v1 另一種做法是,將版本號放在http頭資訊中,但不如放入url方便和直觀。github採用這種做法。路徑...

理解restful風格介面

網路應用程式,分為前端和後端兩個部分。當前的發展趨勢,就是前端裝置層出不窮 手機 平板 桌面電腦 其他專用裝置.因此,必須有一種統一的機制,方便不同的前端裝置與後端進行通訊。這導致api構架的流行,甚至出現 api first 的設計思想。restful api是目前比較成熟的一套網際網路應用程式的...