[英]REST API and static pages (best solution)
我在API开发方面相对较新。 我经常面临不同的问题,并且有很多问题。 主要问题是“如何遵循最佳实践和模式来实施”。
我的目标不仅是编写API并忘记它,还维护并使其易于使用。
现在我对静态页面和JSON
响应有疑问。
在我的网站上,我有一些静态页面( About Us, Contact Us, Shipping, Payment......
),因此具有静态上下文的页面基本上是html和图像。
因此,我需要将此页面作为应用程序的一部分包含在我的应用程序中(在本例中为Android Standalone App),但不应对其进行硬编码,而应使用API从网站上下载它们以保持更新。
我有一些疑问 :
URL应该是什么样子,应该是一定数量的恒定URL( http://supersite.com/api/aboutus,http://supersite.com/api/contactus
...)。 还是应该看起来像http://supersite.com/api/articles/42
?
JSON
响应结构应该如何。 这里的问题是静态页面的内容完全不同,例如“ Contact Us
页面将具有重要信息:电话号码,电子邮件,并且可以是JSON
响应中的独立属性。 About Us
页面有另一个主要部分。 而且可能有很多这样的页面。 如何保持这种统一?
也许最好仅将JSON响应统一到服务器属性(简短描述,全文,图像...)中,然后发送原始文本甚至html,然后在客户端上工作。 但这似乎不是一个好主意。
也许还有另一种正确的方法来实现这一目标。 或者它根本不是API的一部分,应该以另一种方式完成。
我将感谢大家,感谢您的事先帮助。
我建议遵循REST API设计。 就您而言,您只有静态页面。 这意味着您可能具有以下网址:
GET /api/pages/{id}
POST /api/pages
PUT /api/pages/{id}
您的{id}
可以是主键(int), guid
或唯一字符串。 如果是静态网页,通常建议您使用SeoUrl( about-us
, contact-us
)
当数据结构可变时,您可以创建键值对或对象列表。 它看起来可能像这样:
{
"name":"About Us",
"id":"about-us",
"text":"Some HTML text",
"properties":[
{
"key":"phone",
"value":"72273726",
"order":1
},
{
"key":"email",
"value":"my@mail.com",
"order":2
}
]
}
当然,还有更多的方法,最终的解决方案绝对取决于您。 尝试搜索与“ RESTful API设计”相关的文章。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.