【Stimulsoft Reports Server教程】登录服务器、运行 表并获取共享URL

此示例项目显示如何使用用户名和密码登录服务器和显示如何运行 表,然后获取 表快照项的共享URL。

下载Stimulsoft Reports Flex最新版本

此示例项目显示如何使用用户名和密码登录服务器。为此,您可以使用登录 REST命令。作为参数,您需要指定用户名(电子邮件)和密码。这些参数可以在HTTP请求标头中传递。

#region Loginurl = "http://localhost:40010/1/login"; var request = WebRequest.Create(url);request.Headers.Add("x-sti-UserName", "1@1.com";);request.Headers.Add("x-sti-Password", "111111"); var stream = request.GetResponse().GetResponseStream();var sr = new StreamReader(stream);string Out = sr.ReadToEnd();sr.Close();var json = JObject.Parse(Out);// Get session keyvar sessionKey = (string)json["ResultSessionKey"];#endregion

显示如何运行 表,然后获取 表快照项的共享URL

首先,您需要登录服务器。对于此操作,您可以使用登录 REST命令。作为参数,您需要指定用户名(电子邮件)和密码。这些参数可以在HTTP请求标头中传递。

function Connect(){    var req = new XMLHttpRequest();     req.open('GET', 'http://localhost:40010/1/login', false);    req.setRequestHeader("x-sti-UserName", "1@1.com";);    req.setRequestHeader("x-sti-Password", "111111");     req.send();     var data = JSON.parse(req.responseText);     return data.ResultSessionKey;}

在运行 表之前,应创建将用于呈现 表模板的 表快照项。您可以使用reportsnapshots REST命令来实现此目的。

function RunReport(){    // Create snapshot    var sessionKey = Connect();     var req_createSnap = new XMLHttpRequest();    req_createSnap.open('POST', 'http://localhost:40010/1/reportsnapshots', false);    req_createSnap.setRequestHeader("x-sti-SessionKey", sessionKey);     var expiriesDate = new Date();    expiriesDate = new Date(expiriesDate.getTime() + 5*60000);     var event = {'Ident': 'ReportSnapshotItem', 'Name': '001', 'Description': '001', 'Expires': expiriesDate};    event = JSON.stringify(event);    req_createSnap.send(event);    var resultCreateSnapshot = JSON.parse(req_createSnap.responseText);     var reportKey = '30bca27f62594b27b46d6f000b50f717';    var snapshotKey = resultCreateSnapshot.ResultItems[0].Key;...

要运行 表,可以使用reporttemplates命令组的run REST命令。作为参数,您需要指定 表themplate密钥和目标 表快照密钥。 表模板密钥可以作为REST命令的一部分传递。目标 表快照密钥可以在HTTP请求标头中传递。将使用在上面的命令中创建的 表快照项密钥。

...    // Run report to the snapshot    var req_runReport = new XMLHttpRequest();    req_runReport.open('PUT', 'http://localhost:40010/1/reporttemplates/' + reportKey + '/run', false);    req_runReport.setRequestHeader("x-sti-SessionKey", sessionKey);    req_runReport.setRequestHeader("x-sti-DestinationItemKey", snapshotKey);     req_runReport.send();     var data = JSON.parse(req_runReport.responseText);...

要共享 表快照(或其他项目),可以使用items命令组的共享 REST命令。作为参数,您需要指定共享级别并共享到期日期。这些参数可以作为请求发布数据传递。最后,您可以使用不带参数的相同命令获取共享项URL,您应该在REST命令中仅指定共享项键。

...    // Share snapshot    var req_shareItem = new XMLHttpRequest();     req_shareItem.open('PUT', 'http://localhost:40010/1/items/' + snapshotKey + '/share', false);    req_shareItem.setRequestHeader("x-sti-SessionKey", sessionKey);    var event = {'ShareLevel':'Public', 'ShareExpires': expiriesDate};    event = JSON.stringify(event);    req_shareItem.send(event);     // Get share url    var req_shareGetUrl = new XMLHttpRequest();    req_shareGetUrl.open('GET', 'http://localhost:40010/1/items/' + snapshotKey + '/share', false);    req_shareGetUrl.setRequestHeader("x-sti-SessionKey", sessionKey);    req_shareGetUrl.send();     var resultShareGetUrl = JSON.parse(req_shareGetUrl.responseText);    var url = resultShareGetUrl.ResultUrl     // open report by the share url    location.href = url;}

下载示例

购买Stimulsoft正版授权,请点击“咨询在线客服”哟!

Stimulsoft资源合集专题页
标签: 表 表控件Server

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年1月13日
下一篇 2019年1月13日

相关推荐

发表回复

登录后才能评论