我有几个谷歌表格,我正在寻找其中一张表格中的值。
用户输入查找的值,然后在服务器上处理搜索,在 MVC 操作中:
客户端
function findKPI() {
var lookedUpValue = $('#lookedUpValue').val();
var sheetIDArray = getSheetIDArray();
var payload = { sheetIDArray: sheetIDArray, lookedUpValue: lookedUpValue }
$.post('GetValueSheet', payload)
.done(function (data) { alert("OK") })
.fail(function (data) { alert("Error: " + data.responseText) })
}
和服务器端:
<HttpPost>
Function GetValueSheet(sheetIDArray As List(Of String), lookedUpValue As String) As ActionResult
Dim API As New GoogleAPI(Web.HttpContext.Current.Request.PhysicalApplicationPath + "APIKey.json")
Dim ValuesList As List(Of String)
For Each sheetID In sheetIDArray
ValuesList = API.getValuesList(sheetID)
If ValuesList.Contains(lookedUpValue) Then Return Json(sheetID)
Next
Return Json(Nothing)
End Function
有大量纸张需要处理,可能需要一段时间来处理。
我想了解是否以及如何将中间结果发送给客户端,以显示 10、50 等 % 的工作表已被处理。
感谢您的帮助
Post 请求是一个离散的事务,所以你不能直接做。我可能这样做的方法是公开一个 API 点,该点采用标识事务的唯一键,当该 API 点被查询时,它会发回一个显示查询状态的响应。
以非 api 方式进行操作,您可以尝试使用 websockets 进行操作,它允许客户端和服务器之间进行两种方式的通信。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句