我在AWS中有一個API網關,它調用一個返回一些html的lambda函數。該HTML然後在屏幕上正確呈現,但沒有包含任何樣式或js文件。我如何將這些交給客戶?有沒有比在API網關上創建/ js和/ css GET端點以獲取這些文件更好的方法?我希望我可以將它們存儲在S3中,並從那裏獲得自動加載。從API網關和lambda訪問js和css文件
回答
將它們存儲在S3上,並啓用S3 static website hosting。然後在HTML中包含正確的URL。
會阻止它,因爲它來自不通過https服務的其他域https – scottndecker
這與您在原始問題中發佈的內容完全不同。您需要在S3存儲桶上啓用CORS http://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html –
只需在存儲桶中添加CORS規則,以允許我的API網關域從存儲桶中獲取資源。我仍然得到「混合內容:'https://blahblah.execute-api.us-west-2.amazonaws.com/test/dashboard'頁面通過HTTPS加載,但要求一個不安全的樣式表'http:// my-bucket.s3-website-us-west-2.amazonaws.com/css/bootstrap-theme.css'。此請求已被阻止,內容必須通過HTTPS提供。「 – scottndecker
我把我想包括在我的HTML每個js/css文件的確切地址。您需要使用https地址,而不是存儲桶的http地址。每個文件都有它自己的https地址,可以按照上面的Mark B的說明找到它。值得注意的是,通過AWS管理控制檯,導航到S3存儲桶中的文件,單擊右上角的「屬性」按鈕,複製「鏈接」字段,並將其發佈到HTML文件中(該文件也在S3中在我的情況)。 Html看起來像這樣:
<link href="https://s3-us-west-2.amazonaws.com/my-bucket-name/css/bootstrap.min.css" rel="stylesheet">
我沒有在存儲桶上啓用靜態網站託管。我沒有任何CORS權限允許從某個主機讀取。
- 1. 使用API網關和Lambda從網頁
- 2. 「製作」Lambda和API網關
- 3. Lambda和API網關映射
- 4. 訪問HttpModule中的Js和css文件
- 5. Cordova和網絡訪問獲取遠程js/css文件
- 6. css和js無法訪問
- 7. 如果訪問Content,CSS和JS文件和
- 8. AWS API網關和Lambda返回圖像
- 9. API網關和Lambda的地理限制
- 10. AWS API網關和Python Lambda返回HTML
- 11. AWS API網關和LAMBDA功能
- 12. CSV導出使用API網關和Lambda
- 13. AWS Lambda - 訪問API網關API密鑰信息
- 14. 如何防止CSS和JS直接訪問文件
- 15. Rails 3應用程序無法訪問jqtouch js和css文件
- 16. 從Java服務AWS的Lambda和AWS網關API
- 17. ATK4 - 網頁文件夾和JS/CSS問題
- 18. 從AWS Lambda JS SDK訪問EC2資源
- 19. 如何在Lambda函數中訪問API網關請求模型?
- 20. Google Maia .css和.js文件?
- 21. GZipping CSS和JS文件
- 22. django css和js文件
- 23. CSS和JS文件沒裝
- 24. 定製API訪問策略和API網關
- 25. 通過AWS Lambda和API網關下載Amazon S3的文本文件
- 26. 春行家,訪問CSS/JS文件
- 27. 如何使用C#webbrowser從css和js文件保存網頁?
- 28. 如何從網頁內容加載js和css文件spring mvc
- 29. 如何停止從靜態文件夾中的url訪問css和js? Spring Boot
- 30. OAuth 2.0 + Lambda + API網關
AWS服務代理看起來像我想要的。雖然在創建時似乎無法獲得正確的設置組合。 – scottndecker