媒体实体服务方法
下列服务可用来构造用于检索
媒体实体动态内容的 URL。
String GetProxyUrl(String targetUrl, [Boolean isAbsoluteUrl] )
在运行时,媒体实体会将配置的基本 URL 和 url 参数组合,以创建完整的目标 URL。例如:
http://my.thingworx.server:8080/Thingworx/MediaEntities/
MyProxy/Content/...trailing part of real url
|
要确保 URL 的格式和编码正确无误,以便在混搭中使用,请使用 GetProxyUrl 服务方法。
|
|
对于单一登录 (SSO) 身份验证,请输入支持 OAuth 的 URL。
|
参数
• targetUrl
源服务器上内容的 URL。该 URL 必须能够从 ThingWorx 服务器访问。
|
如果源服务器上的内容能够从客户端浏览器访问,则不需要使用媒体实体。相反,可以直接在 图像小组件或 链接小组件中使用该 URL。
|
• isbsoluteUrl
此参数为可选参数。
◦ true
如果目标 URL 为源服务器的完整且绝对的 URL,则将此参数设置为 true。targetUrl 必须以已配置的基本 URL 开头。
◦ false
如果目标 URL 对已配置的基本 URL 来说是相对的,则将此参数设置为 false。将 targetUrl 附加到基本 URL 以确定实际的目标 URL。
如果未提供此参数,则默认值为 false (相对)。由于媒体实体的已配置基本 URL 可能是未知的,因此从混搭使用相对 URL 比较方便。
• twxME_ClientFollowRedirect
默认情况下,此参数为 false。此参数为 true 时,将在其后提供重定向 URL。
示例
这些示例假定最终用户的浏览器无法访问此内容。如果 URL 可以通过浏览器访问,则可在混搭中使用它们;不需要通过媒体实体代理内容。
• 这些示例使用名为 MyProxy 的新媒体实体。
• 将提供内容的 ThingWorx 服务器上的 URL 为内容 URL。
• 示例假定 ThingWorx 服务器位于 thingworx.my,实际内容位于 content.acme.com。
单一的简单 URL
• 目标 URL:http://content.acme.com/images/example.jpg
这就是您尝试呈现的内容。
• MyProxy.URL:http://content.acme.com/images/example.jpg
• 内容 URL:http://thingworx.my/MediaEntities/MyProxy/Content
在该 URL 中,ThingWorx 将代理实际内容。
使用 POST 请求的内容
具有动态内容的媒体实体现可接受 POST 请求。这样一来便可从接受 json 参数的 API 中检索内容。MediaEntity 请求中的请求主体将转发至目标 URL,且该请求的结果会通过 ThingWorx 返回。
多个内容 URL
通常,单一源服务器会从多个相关 URL 提供内容。可以使用单一媒体实体来代理多个相关的源 URL,而不是为每个 URL 设置媒体实体。
• 目标 URL:http://content.acme.com/images/[image1.jpg, image2.jpg, image3.jpg. …]
• MyProxy.URL:http://content.acme.com/images/
• 内容 URL:
◦ http://thingworx.my/MediaEnties/MyProxy/Content/image1.jpg
◦ http://thingworx.my/MediaEnties/MyProxy/Content/image2.jpg
◦ http://thingworx.my/MediaEnties/MyProxy/Content/image3.jpg
◦ http://thingworx.my/MediaEnties/MyProxy/Content/...
在这种情况下,媒体实体连接基本 URL 和 url 参数,并用于要从中代理内容的实际目标 URL。