2016-11-29 44 views
0

我想在不使用lambda的情況下從AWS API Gateway返回內容類型的圖像。例如所以我可以在一個頁面上參考。如何僅使用AWS API Gateway返回空圖像

返回類型需要是沒有圖像的圖像內容類型。

我看到AWS已經實現了二進制支持,但我一直無法做到上述。

+0

你試過了什麼,在什麼意義上它不起作用?另外,因爲這是一個錯誤,所以返回一個沒有圖像的「圖像」內容類型並沒有什麼意義。你想要像1 x 1清晰像素跟蹤gif嗎? –

+0

是的,它是一個跟蹤像素,但我不想要圖像 - 不需要返回實際圖像,即使是1x1像素。所以基本上返回HTTP 204無內容。 –

回答

1

我設法解決了這個問題。

你或許可以做更少的步驟,但這是我最終的結果。

  1. 創建內容類型圖像的模型/帶的主體爲png {}(I稱之爲emptyimage)
  2. 創建GET方法。
  3. 集成請求:這只是一個MOCK;無需改變其他任何東西。
  4. 集成響應
    • 與204
    • 的方法響應狀態拆下200
    • 添加2 \ d {2}的正則表達式添加內容類型
  5. 方法響應的響應報頭。
    • 刪除200
    • 添加204組
    • 響應頭的內容類型
    • 內容類型響應設置爲emptyimage模型(先前創建的)

調用API返回一個有效的204對內容類型圖像/ png沒有內容響應。

如果您使用JavaScript渲染此像素,則可避免在dom中需要使用img標記,並且您不會收到瀏覽器缺少圖像佔位符。

例如

<script type="text/javascript"> (new Image()).src = "{url}"; </script> 
+0

並且瀏覽器不會將其視爲⌧破碎的圖像? –

+0

那麼,它是一個沒有內容的有效迴應,如果您使用JavaScript來加載圖像,它不會注入/需要在dom中的圖像標籤,並顯示丟失的圖像;例如。我會更新我的答案。 –

+0

這是MOCK集成的最佳/唯一方法。 –