學習筆記4 HATEOAS

2022-03-03 14:25:28 字數 1749 閱讀 3061

動態型別實現hateoas ,提供出超連結等屬性,controller修改一些方法

1.對於單個資源可以用expandoobject

2.對於集合資源使用匿名類.

實現:1.新建乙個類:linkresource.cs,實現3個屬性

public

class

linkresource

public

string href

public

string rel

public

string method

}

2.在postcontroller.cs新增方法

private ienumerablecreatelinksforpost(int id, string fields = null

) ), "

self

", "

get"

)); }

else

), "

self

", "

get"

)); }

links.add(

newlinkresource(

_urlhelper.link(

"deletepost

", new ), "

delete_post

", "

delete

"));

return

links;

}private ienumerablecreatelinksforposts(postparameters postresourceparameters,

bool hasprevious, bool

hasnext)

;if(hasprevious)

if(hasnext)

return

links;

}其他: [httpget("")]  修改為  [httpget("",name="getpost")

controller修改  單筆返回資料

原**為:

var shapedpostresource =postresource.todynamic(fields);

return ok(shapedpostresource);

修改完成後的**為:

var shapedpostresource =postresource.todynamic(fields);

var links =createlinksforpost(id, fields);

var result = shapedpostresource as idictionary;

result.add("links", links);

return ok(result);

列表返回資料修改增加連線等引數

原來是

var shapedpostresource =postresources.todynamicienumerable(postparameters.fields);

返回 shapedpostresource

增加:

var shapedwithlins = shapedpostresource.select(x =>);

返回改為 shapedwithlins

學習筆記4

第五單元 使用者 使用者組和許可權 1.使用者 a.每乙個使用者建立都會有乙個uid和gid b.所有使用者的資訊儲存在 etc passwd檔案中 c.每乙個能登陸系統的使用者都有乙個可以使用的shell,用cat etc shells命令可以看到可以使用的所有shell 注 其中 bin sh,...

學習筆記 4

結構體定義 typedef struct sqlist sqlist struct sqlist 刪除函式 第一版 bool listdelete sqlist list,int index for int j index j l.length 1 j l.length return true 第二...

spring學習筆記 4

spring對aop的支援 1 如果目標物件實現了介面,預設情況下會採用jdk的動態 實現aop 2 如果目標物件實現了介面,可以強制使用cglib實現aop 3 如果目標物件沒有實現了介面,必須採用cglib庫,spring會自動在jdk動態 和cglib之間轉換 如何強制使用cglib實現aop...