当前位置: 首页>>技术解读>>正文


CSOM vs JSOM vs SSOM vs REST

webfans 技术解读 , , , 去评论

问题描述

对于不同的托管类型和技术缩写似乎没有任何明确的解释,所以我决定发布关于不同类型的社区帖子。也许永远不会有任何好的区别,但我们在SharePoint Stack Exchange中至少可以创建我们自己的定义,也许可以通过这些来定义。我相信这可以让一切变得更轻松。我希望其他人会编辑这篇文章,因此它变得更加正确,因为可能有很多错误和主观无知。

最佳解决方案

2013

型号类型:

  • CSOM:Client-side对象模型。仅限C#(或Visual Basic),使用NuGet,目前2010和2013的相同包装。

  • JSOM:JavaScript对象模型。仅限JavaScript。

    • SP.ClientContext.get_current()正常使用。 new SP.ClientContext('url...')用于特定的SPSite。请注意,这在2013年适用于cross-SPSite。

  • SSOM:Server-side对象模型。仅限C#(或Visual Basic),使用Microsoft.SharePoint(15)DLL。必须部署在同一个服务器场中。

  • REST:REST Web技术和标准开放数据协议(OData)语法。

主机:

  • SharePoint托管:仅限JavaScript和模板。模板我指的是列表模板,内容类型等。还可以添加任何可以上传到SharePoint虚拟文件系统的内容,例如.aspx-pages。

  • 自动主题:仅限C#(或Visual Basic)。目前仅在Office 365上受支持。在应用购买时,将自动配置Azure实例。使用OAuth与SharePoint网站进行通信。

  • 提供者托管:C#(或Visual Basic)。与Autohosted类似,但意味着更多地手动托管(即在Azure上)。因此,您可以在任何服务器上启动Web应用程序,然后使用S2S连接到SharePoint。

  • 沙盒:2010年的残余,可以上传到解决方案库。支持SSOM的有限子集。没有文件访问权限,因此无法将任何内容部署到_layouts文件夹。如果您使用有限的SSOM-part(C#),您的解决方案将被视为已弃用。支持列表模板和内容类型等模板,直接部署到主机Web。

  • 场解决方案:完全访问,通过PowerShell进行部署。

技术表:

+--------------------------------------------------------+
¦               ¦ CSOM ¦ JSOM ¦ SSOM ¦ REST JS ¦ REST C# ¦
¦---------------+------+------+------+---------+---------¦
¦ JavaScript    ¦      ¦  x   ¦      ¦  x      ¦         ¦  
¦ C#            ¦      ¦      ¦  x   ¦         ¦  x      ¦  
¦ From browser  ¦      ¦  x   ¦      ¦  x      ¦         ¦  
¦ From server   ¦  x   ¦      ¦  x   ¦         ¦  x      ¦  
¦ OAuth2        ¦  x   ¦  x   ¦  x   ¦  x      ¦  x      ¦  
¦ S2S           ¦  x   ¦      ¦  x   ¦         ¦         ¦ 
+--------------------------------------------------------+

主机表:

+---------------------------------------------------------------------+
¦                     ¦ CSOM ¦ JSOM ¦ SSOM        ¦ REST JS ¦ REST C# ¦
¦---------------------+------+------+-------------+---------+---------¦
¦ SharePoint hosted   ¦      ¦  x   ¦             ¦         ¦         ¦
¦ Autohosted          ¦  x   ¦      ¦             ¦         ¦  x      ¦ 
¦ Provider hosted     ¦  x   ¦      ¦             ¦         ¦         ¦ 
¦ Sandboxed solution  ¦  x   ¦  x   ¦  x(limited) ¦  x      ¦  x      ¦
¦ Farm solution       ¦  x   ¦  x   ¦  x          ¦  x      ¦  x      ¦ 
+---------------------------------------------------------------------+

2010

型号类型:

  • CSOM:Client-side对象模型。 C#(或Visual Basic)NuGet

  • JSOM:JavaScript对象模型。仅限JavaScript。

    • SP.ClientContext.get_current()正常使用。 new SP.ClientContext('url...')用于特定的SPWeb。请注意,您只能访问SharePoint 2010中当前网站集内的内容。

  • SSOM:Server-side对象模型。仅限C#(或Visual Basic),使用Microsoft.SharePoint(14)DLL。必须部署在同一个服务器场中。

  • REST:2010年的REST仅适用于ListData.svc。请注意,SPServices(jQuery插件)使用_ /vti /bin中的.asmx服务,例如/_vti_bin/Webs.asmx

技术表:

+--------------------------------------------+
¦               ¦ CSOM ¦ JSOM ¦ SSOM ¦ REST  ¦
¦---------------+------+------+------+-------¦
¦ JavaScript    ¦  x   ¦  x   ¦      ¦  x    ¦  
¦ C#            ¦  x   ¦      ¦  x   ¦  x    ¦  
¦ From browser  ¦      ¦  x   ¦  x   ¦  x    ¦  
¦ From server   ¦  x   ¦      ¦  x   ¦       ¦  
+--------------------------------------------+

主机表:

+---------------------------------------------------------------------+
¦                     ¦ CSOM ¦ JSOM ¦ SSOM        ¦ REST JS ¦ REST C# ¦
¦---------------------+------+------+-------------+---------+---------¦
¦ Sandboxed solution  ¦  x   ¦  x   ¦  x(limited) ¦  x      ¦  x      ¦
¦ Farm solution       ¦  x   ¦  x   ¦  x          ¦  x      ¦  x      ¦ 
+---------------------------------------------------------------------+

参考资料

本文由朵颐IT整理自网络, 文章地址: https://duoyit.com/article/2077.html,转载请务必附带本地址声明。