我在GitHub頁面上製作一個簡單的網站。我在/ docs文件夾中有一個文本文件(我可以移動),我想通過index.html更改它的內容。我發現了很多後端解決方案,但GitHub頁面只允許靜態網頁。有沒有辦法在靜態網頁中這樣做,如果是的話如何在JavaScript中做到這一點?靜態網頁更改文件
靜態網頁更改文件
回答
由於它是靜態頁面,因此無法從前端客戶端重寫託管文件。要更新文本文件的內容,則需要通過GitHub的接口來做到這一點,或者提交到你的倉庫不幸
號
更改服務器上的內容需要在服務器上運行的代碼。
如果你可以用客戶端代碼來做到這一點,那麼每個網站都會很快變壞。
最接近的做法是將數據存儲在客戶端(例如,通過localstorage),然後在頁面上有一個腳本讀取該數據並在本地編輯DOM。顯然,更改數據只會改變特定的瀏覽器,而不是所有的訪問者。
有兩種回答您的問題:
從技術上講,它可以從一個腳本在GitHub上更改的文件:
GitHub的API允許你通過一個HTTP請求更新文件。
您可以使用Javascript來修改文件的內容,然後發送請求到GitHub的API來更新該文件。有幾個庫使得使用API非常容易,但是從這裏你必須自己弄清楚。
下面是該文檔:https://developer.github.com/v3/repos/contents/#update-a-file
從概念上講,這聽起來像你正在做的事情是錯誤的。靜態網頁被稱爲靜態,因爲沒有任何變化。如果你想擁有動態內容,你應該看看其他解決方案。
這的確是一個小項目,所以我更喜歡託管它在GitHub上 –
然後試試看。您需要解決的一個問題是如何通過API允許更改您的存儲庫,因爲我不確定您是否可以在不進行身份驗證的情況下更改文件。我們使用個人訪問令牌從我們的服務器修改文件,但您並不想與任何人分享。您可以通過GitHub設置身份驗證並使用用戶的OAuth令牌,但他們需要擁有GitHub帳戶。 – jdno
- 1. 如何使用inner html更改網頁中的靜態文本?
- 2. 靜態文件 - 找不到網頁
- 3. 轉到網頁靜態文件服務
- 4. 在網頁上動態更改文字
- 5. 如何在PHP中更改網址(靜態頁面)
- 6. 更改網頁位置,同時保持一些項目靜態?
- 7. 刪除網頁/網頁靜態軌道
- 8. 動態網址到靜態網址更改
- 9. Django更新靜態文件
- 10. 發送靜態文件,但有時會更改文件
- 11. 與PHP的靜態網頁
- 12. 的JavaScript - 靜態網頁
- 13. 靜態網頁,不打破?
- 14. 網頁的靜態背景
- 15. 從靜態更改到實時更改
- 16. 將靜態的一些靜態文件位置從/static/file.js更改爲/file.js
- 17. 更改網頁視圖高度動態
- 18. 動態更改網頁上的圖像
- 19. 更改靜態變量
- 20. 更改靜態布爾值
- 21. 永久更改靜態值
- 22. 網站中的靜態內容 - 網址更改
- 23. 如何將php/mysql網站更改爲靜態網站
- 24. 靜態庫.a文件在執行.m文件中的更改後未更新
- 25. ASP.NET網頁的.aspx.cs文件中的私有靜態變量
- 26. 如何在parse.com上查看我的靜態網頁文件?
- 27. 靜態網頁(HTML)和文件在不同工作負載
- 28. Django:不能在網頁中包含靜態文件
- 29. Django靜態文件只加載網站的首頁
- 30. 如何使用jrebel + glassfish +靜態網頁文件
考慮使用AJAX /前端框架,做這樣的事情,在基於靜態文件(推薦格式:'json')可以相應地操縱頁面 –