Tag: rest

向服务器发送JSON POST请求,接收二进制响应(一个Excel文件),如何下载?

我试图做一个POST调用服务器,发送JSON数据。 服务器接受JSON数据,做一些处理,然后发回一个Excel .xlsx作为响应。 我希望浏览器打开“保存文件为”对话框供用户保存。 我一直在寻找一个干净的解决scheme来做到这一点。 但在这个问题的一个可能的解决schemeJavaScript / jQuery通过POST与JSON数据下载文件build议将Excel文件保存在服务器上,然后发回一个URL链接,然后打开一个iframe供用户下载。 这对我来说是不可行的,因为用户可以在服务器上创build数千个Excel文件,并且服务器的存储空间有限。 我想要解决scheme是即时的。 我见过的另一个解决schemebuild议将数据转换为表单,然后使用表单提交。 再次,这是一个不行,因为我的数据是在几百甚至上千的Excel行。 我的jQuery POST调用: $ .ajax({type:'POST',url:'/ server / path',data:JSON.stringify(dataSent),processData:false,success:function(data,textStatus,jqXHR){},error:function result,status,err){},contentType:'application / json',dataType:'application / vnd.ms-excel'}); 在后端我设置了这个: Response.header(“Content-Type”,“application / vnd.ms-excel”) Response.header(“Content-Disposition”,“attachment; filename = \”export.xlsx \“”) 什么是强制浏览器打开“另存为…”对话框的最佳方法? 谢谢,

以编程方式在Office 365上读取/写入Excel Web App

我想在Office 365上托pipe的Excel Web应用程序中读取和写入单元格。在线信息似乎存在冲突,API访问EWA是否可行。 我希望使用一些RESTful API,如下所示: HTTPS:// [myoffice365site] /个人/ [名为myUsername] /文档/ [myworkbook] .XLSX /模型 但是当我这样做,我收到一个通用的404错误。 我也无法在Office 365帐户中find任何令牌或API密钥。 有没有人有运气使用C#或Javascript访问Excel Web应用程序? 谢谢!

将大集合对象(从jsonparsing)写入excel范围

我正在尝试将json api转换为excel表格。 我尝试了不同的parsing方法,但目前使用VBA-JSON (类似于VB-JSON,但更快的parsing)。 到目前为止,我把它转换成一个对象。 这是一个集合,如果我是正确的。 但是,将对象转换为表需要花费大量的时间。 以下是我的代码。 在我使用的这台旧机器上,HTTP>string使用9。 parsing到对象的成本为14s。 这些是可以接受的,但是通过一个列(25k行)的for循环花费30 + s。 我需要大约8列才能从集合中获得,这将会花费太长时间。 在我的i5机器上也需要很长的时间。 Dim ItemCount As Integer Dim itemID() As Long Function httpresp(URL As String) As String Dim x As Object: Set x = CreateObject("MSXML2.XMLHTTP") x.Open "GET", URL, False x.send httpresp = x.responseText End Function Private Sub btnLoad_Click() Application.Calculation = xlCalculationManual Application.ScreenUpdating = […]

Excel文档内容到webservice

我有一个wpf员工创build窗口,我可以在其中创build名字,姓氏等基本信息,这将在我的REST Web服务中创build员工。 一个例子: 客户端: private void CreateStaffMember_Click(object sender, RoutedEventArgs e) { string uri = "http://localhost:8001/Service/Staff"; StringBuilder sb = new StringBuilder(); sb.Append("<Staff>"); sb.AppendLine("<FirstName>" + this.textBox1.Text + "</FirstName>"); sb.AppendLine("<LastName>" + this.textBox2.Text + "</LastName>"); sb.AppendLine("<Password>" + this.passwordBox1.Password + "</Password>"); sb.AppendLine("</Staff>"); string NewStudent = sb.ToString(); byte[] arr = Encoding.UTF8.GetBytes(NewStudent); HttpWebRequest req = (HttpWebRequest)WebRequest.Create(uri); req.Method = "POST"; req.ContentType = "application/xml"; […]

WebAPI和angularJS JS文件下载 – 文件损坏

我在我的WebAPI中生成一个Excel文件。 我将它“存储”在一个内存stream中,然后放入响应中,如下所示: var result = new HttpResponseMessage(HttpStatusCode.OK) { Content = new StreamContent(ms) }; result.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream"); result.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment") { FileName = projectName + ".xlsx" }; // ms.Close(); return result; 它看起来像服务器端正在工作正确。 如果我正在将该内存stream写入文件stream,则会创build该文件并可以毫无问题地打开该文件。 在angular度方面,如何在点击button时重新创build文件? 我尝试了这样的事情: $scope.exportQuotas = function (projectName) { homeService.GetQuotas(projectName, $routeParams.token, $scope.selection).then( function (data) { var dataUrl = 'data:application/octet-stream;' + data var link […]

如何在Excel中使用VBA进行REST调用?

我试图按照这个例子: http : //libkod.info/officexml-CHP-9-SECT-5.shtml – Archive.org – Donate 但它给了这个错误 在这一行上: Dim objHTTP As New MSXML2.XMLHTTP 我试图使用这个例子: 我如何使用VBA从Excel发送HTTP POST请求到服务器? 但它给了这个错误: 在这一行上: Print objHTTP.Status 那么如何在VBA中进行POST REST调用呢? 如何在VBA中进行PUT多部分/表单数据file uploadREST调用? 工具>参考 码 Sub SendEmail() 'Dim objHTTP As New MSXML2.XMLHTTP 'Set objhttp = CreateObject("WinHttp.WinHttpRequest.5.1") Set objHTTP = CreateObject("MSXML2.ServerXMLHTTP") URL = "http://localhost:8888/rest/mail/send" objHTTP.Open "POST", URL, False objHTTP.send ("{""key"":null,""from"":""me@me.com"",""to"":null,""cc"":null,""bcc"":null,""date"":null,""subject"":""My Subject"",""body"":null,""attachments"":null}") Print objHTTP.Status […]

Excel 2007/2010如何使用REST Web服务?

在Excel 2007/2010中使用哪些选项来使用REST Web服务? 我可以使用XML地图来使用基本的XML列表,但是这不会让我build立一个dynamic的URL(所以我可以包含参数)。 例如,我可以为http:// machine / service / level / 5添加一个XML映射到Excel,并在工作簿中显示值就好了 – 没有问题。 真正的问题是,我如何dynamic地改变URL的/ 5部分来自Excel中的另一个单元格? 这样我可以有几个单元格有选项(什么ID,什么名称等),并且每当这些值改变(理想情况下)一个新的dynamicURL将被构造和XML地图将被刷新。 这样的事情可能吗? 还有其他人有更好的方法来采取一些参数,调用一个Web服务(REST或SOAP,我不挑剔),并将结果推回到Excel进一步处理?