繁体   English   中英

REST API和静态页面(最佳解决方案)

[英]REST API and static pages (best solution)

我在API开发方面相对较新。 我经常面临不同的问题,并且有很多问题。 主要问题是“如何遵循最佳实践和模式来实施”。
我的目标不仅是编写API并忘记它,还维护并使其易于使用。

现在我对静态页面和JSON响应有疑问。
在我的网站上,我有一些静态页面( About Us, Contact Us, Shipping, Payment...... ),因此具有静态上下文的页面基本上是html和图像。

因此,我需要将此页面作为应用程序的一部分包含在我的应用程序中(在本例中为Android Standalone App),但不应对其进行硬编码,而应使用API​​从网站上下载它们以保持更新。

我有一些疑问 :

  1. URL应该是什么样子,应该是一定数量的恒定URL( http://supersite.com/api/aboutus,http://supersite.com/api/contactus ...)。 还是应该看起来像http://supersite.com/api/articles/42

  2. JSON响应结构应该如何。 这里的问题是静态页面的内容完全不同,例如“ Contact Us页面将具有重要信息:电话号码,电子邮件,并且可以是JSON响应中的独立属性。 About Us页面有另一个主要部分。 而且可能有很多这样的页面。 如何保持这种统一?

  3. 也许最好仅将JSON响应统一到服务器属性(简短描述,全文,图像...)中,然后发送原始文本甚至html,然后在客户端上工作。 但这似乎不是一个好主意。

也许还有另一种正确的方法来实现这一目标。 或者它根本不是API的一部分,应该以另一种方式完成。

我将感谢大家,感谢您的事先帮助。

我建议遵循REST API设计。 就您而言,您只有静态页面。 这意味着您可能具有以下网址:

GET    /api/pages/{id}
POST   /api/pages
PUT    /api/pages/{id}

您的{id}可以是主键(int), guid或唯一字符串。 如果是静态网页,通常建议您使用SeoUrl( about-uscontact-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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM