重构为REST结构