簡體   English   中英

Google 幻燈片 Api - 檢查 Google 幻燈片 URL 是否為私密或無效

[英]Google Slides Api - Check Google Slides URL if is in private or invalid

我有一個應用程序,用戶可以輸入谷歌幻燈片的鏈接,如果成功,它將在另一個組件上查看/呈現谷歌幻燈片。 但我也想通知用戶他們輸入的鏈接是公共的、私人的還是無效的。 所以基本上當它是公共鏈接時,它會成功顯示谷歌幻燈片,但問題是我怎么知道鏈接是私人鏈接還是無效鏈接

私人鏈接- Google 幻燈片存在但不可共享。

無效鏈接- 沒有現有的 Google 幻燈片或錯誤的 URL。

I tried using this API GET https://slides.googleapis.com/v1/presentations/{presentationId} , given that I already have the presentationId , but I only got 2 responses, the 200 which returns successfully with this object and 400 which與此返回(presentationId 來自私有 Google 幻燈片 ID 還是虛構 ID):

{
  "error": {
    "code": 400,
    "message": "This operation is not supported for this document",
    "status": "FAILED_PRECONDITION"
  }
}

我還有其他方法可以區分鏈接嗎?

謝謝:D

回答:

您無法僅通過鏈接判斷 ID 是否無效。 您必須根據 HTTP 狀態代碼實際發出請求並處理您的應用程序如何響應。

更多信息:

來自Google 表格 API 文檔中有關演示文稿 ID的信息:

演示文稿 ID 是一個包含字母、數字和一些特殊字符的字符串。 以下正則表達式可用於從 Google 表格 [原文] URL 中提取演示文稿 ID:

/presentation/d/([a-zA-Z0-9-_]+)

這個字符串就是這樣 - 只是一個字符串。 沒有文檔解釋這些是如何生成的,因此如果不撥打電話,就無法發現任何給定的 ID 是否有效。

處理:

根據經驗,Google 幻燈片/文檔/表格 ID 的長度為 44 個字符,並且如上面鏈接的文檔中所述,將匹配特定的正則表達式。 有了這個,您可以對 ID 的有效性進行一些檢查,但除此之外,必須進行調用以確保確定。

一些偽代碼可以幫助您:

url = https://docs.google.com/presentation/d/some-presentation-id/edit

slideId = url.extract("/presentation/d/([a-zA-Z0-9-_]+)")

if slideId == null OR slideId.length != 44:
    return "Presentation URL not valid"
else:
    request = makeHTTPRequest(url)
    if request.responseCode = 200:
        // display slide
    else if request.responseCode = 400: 
        return "can't access this url, invalid or private"

我希望這對你有幫助!

參考:


相關問題:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM