我正在研究一個.net應用程序,它允許用戶將Google文檔鏈接附加到應用程序並從應用程序本身查看/編輯它們。我使用Iframe將Google文檔嵌入到我的應用程序中。在ASP.Net中的IFRAME中顯示Google Doc應用程序
由於谷歌文檔嵌入應用程序應該離線發生,我使用來自Google API的訪問令牌來獲取URL和顯示。 Iam在這方面有顯示問題。
我已經完成了所有與獲取根據Google API文檔「脫機」打開Google文檔所需的訪問令牌相關的所有內容。根據google api開發者文檔,在打開google doc url時,我需要將訪問令牌作爲查詢參數或作爲請求標頭(「授權」標頭)傳遞。
我嘗試使用認證頭,並打開使用HttpWebRequest對象的谷歌文件的網址,但我不明白的文檔頁面正確打開..
代碼在aspx文件
htmlBuilder.AppendFormat("<iframe src='ShowFiles.ashx?url={0}' id='myFrame' name='myFrame' width='100%' height='100%' marginheight='0' frameborder='0'></iframe>", urlLink);
守則通用處理程序(ShowFiles.ashx)文件
// get the UrlLink from the Query Parameter (url)
HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create(urlLink);
myHttpWebRequest.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like
Gecko) Chrome/27.0.1453.116 Safari/537.36";
myHttpWebRequest.Headers.Add("Authorization", "Bearer " + accessToken);
string pageContent = string.Empty;
HttpWebResponse HttpWResp = (HttpWebResponse)myHttpWebRequest.GetResponse();
if (HttpWResp != null)
{
StreamReader sr = new StreamReader(HttpWResp.GetResponseStream());
pageContent = sr.ReadToEnd();
}
context.Response.ContentType = HttpWResp.ContentType;
context.Response.Write(pageContent);
瀏覽器就打開谷歌文檔,但一旦打開它口口聲聲說「試圖連接到谷歌」,並不斷出現「服務器不響應」
所以我試圖使用訪問令牌作爲URL LINK的查詢參數,但似乎並沒有工作。 如: urlLink =「http://google.docs.com/myDoc/myFile?access_token=fsdfsfsq4334234_df
並將此網址到IFRAME SRC
<iframe src=urlLink>
這並不在所有的工作......
我知道,如果在同一個瀏覽器我登錄到我在那裏我有這個谷歌驅動文件(在另一個標籤)谷歌賬戶,然後在沒有這個訪問令牌我的web應用程序,我的iframe裝載谷歌文檔完美,只是通過給文件的網址類似
^h ttp://google.docs.com/myDoc/myFile「>
我試圖從客戶端使用jQuery ajax打開網址,然後google文檔打開,但成爲只讀。
var jqXHR = $.ajax({
async: true,
url: url,
type: 'GET',
xhr: function() {
var xhr = new window.XMLHttpRequest();
return xhr;
},
beforeSend: function (xhr) {
if (xhr != null)
xhr.setRequestHeader("Authorization", "Bearer " + token);
}
});
jqXHR.done(function (data, textStatus, xhr) {
$("#myFrame").contents().find("html").html(xhr.responseText);
});
誰能幫我在我的web應用程序
如果這是我在一個選項卡登錄到Gmail帳戶,並在另一個選項卡中打開我的web應用程序的話,那麼,我能夠設置IFRAME SRC到Google Docs和它得到正確和IAM能夠編輯所顯示的文件 – devi