Day 3 : 初次接觸WebRTC

更新於 發佈於 閱讀時間約 4 分鐘

Introduction to WebRTC

由於之後想要做的專題是跟即時視訊相關,在開始作業前想對webrtc有些基本的了解,結果就是一踏入了解就發現這個水深的可怕,之後每天除了寫一點go,也會花時間學習這個協定。WebRTC是個用於瀏覽器之間溝通的協定,透過NAT Traversal(STUN、TURN)的技術讓我們可以在不知道public ip的情況下,NAT建立的temporary role連接兩個使用者。


Go one more

json是目前前後端常用於交換資料的方式,在go的gin框架裡面,通常會將我們所需要的json資料先定義一個struct,並綁定json屬性,接者使用ShouldBindJSON來取得已綁定的json的參數。

// 定義一個結構體,其屬性是json
type Member struct{
Id int8 `json:"id" binding:"required"`
Name string `json:"name" binding:"required"`
Password string `json:"password" binding:"required,min=8"`
}
func main(){
  var router = gin.Default()
  var port = ":8080"
  router.POST("/member",func(c *gin.Context){
    var member Member
    fmt.Println(member)
   if err :=c.ShouldBindJSON(&member);err !=nil{
  c.String(http.StatusBadRequest,err.Error())
  return
  }
    c.JSON(http.StatusOK, gin.H{
  "ID": member.Id,
  "Name": member.Name,
  "Password": member.Password,
})
  })
  router.Run(port)
}

過postman進行測試,header的content-type選擇application/json,接著在body裡面輸入json格式的資料,並server收到且可成功解析

raw-image

後記

雖然很喜歡vocus的配色,但今天第一次嘗試在這寫比較多code,發現超級不適合...,可能這邊的定位不應該放在程式分享,從明天開始要把這系列文章放到hackMD或是Obsidian吧~

Ref.

WebRTC: The secret power you didn't know Go has | Sean DuBois | Conf42 Golang 2021 - YouTube

留言
avatar-img
留言分享你的想法!
avatar-img
Blockcyber的沙龍
2會員
15內容數
紀錄轉職路上的點點滴滴
Blockcyber的沙龍的其他內容
2023/01/17
Stress testing 一早起床發現昨天辛苦整天網站又不能跑了,去看error.log發現原來是有其他服務使用到了80port,造成根本監聽不到,再去找找看是那些服務,結果可能是apache2使用到,直接怒sudo service apache2 stop,網站就恢復正常了。 今天除了再多熟悉
Thumbnail
2023/01/17
Stress testing 一早起床發現昨天辛苦整天網站又不能跑了,去看error.log發現原來是有其他服務使用到了80port,造成根本監聽不到,再去找找看是那些服務,結果可能是apache2使用到,直接怒sudo service apache2 stop,網站就恢復正常了。 今天除了再多熟悉
Thumbnail
2023/01/16
What the hack? 昨天信誓坦坦想說要將每天學習心得做一點紀錄,結果今天只做一件事,就是要把網站加上SSL憑證,再到Nginx做設定,以為一小時內就搞定的事情就處理了一整天...,可能是沒有分號、可能是url少了/符號、可能是沒有做port的導向、也可能檔案路徑設定錯誤,真的心中各種不甘,
Thumbnail
2023/01/16
What the hack? 昨天信誓坦坦想說要將每天學習心得做一點紀錄,結果今天只做一件事,就是要把網站加上SSL憑證,再到Nginx做設定,以為一小時內就搞定的事情就處理了一整天...,可能是沒有分號、可能是url少了/符號、可能是沒有做port的導向、也可能檔案路徑設定錯誤,真的心中各種不甘,
Thumbnail
2023/01/15
Introduction 在開始WeHelp第二階段時,每周都在想周日的時候要寫一篇網誌來記錄整周的學習,但前兩周沒有如期寫後,後面就心態就持續默許這偷懶的想法,到整個第二階段都沒有寫了@@,明天開始在完成原本訓練營一些HTTPS和AWS ELB的作業後,也要正式進入重頭戲了,再加上今天也去看了Yo
Thumbnail
2023/01/15
Introduction 在開始WeHelp第二階段時,每周都在想周日的時候要寫一篇網誌來記錄整周的學習,但前兩周沒有如期寫後,後面就心態就持續默許這偷懶的想法,到整個第二階段都沒有寫了@@,明天開始在完成原本訓練營一些HTTPS和AWS ELB的作業後,也要正式進入重頭戲了,再加上今天也去看了Yo
Thumbnail
看更多
你可能也想看
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
介紹朋友新開的蝦皮選物店『10樓2選物店』,並分享方格子與蝦皮合作的分潤計畫,註冊流程簡單,0成本、無綁約,推薦給想增加收入的讀者。
Thumbnail
介紹朋友新開的蝦皮選物店『10樓2選物店』,並分享方格子與蝦皮合作的分潤計畫,註冊流程簡單,0成本、無綁約,推薦給想增加收入的讀者。
Thumbnail
GOB Go官方有提供net/rpc的RPC套件。此套件提供GOB的編/解碼,且支援TCP或HTTP傳輸方式。它可以在伺服器端註冊多個不同類型物件。 遠端存取的要求條件 方法的類型可輸出 方法的本體可輸出 方法必須要有兩個參數是輸出或內建 方法的第二個參數是指標型 方法的返回類型為
Thumbnail
GOB Go官方有提供net/rpc的RPC套件。此套件提供GOB的編/解碼,且支援TCP或HTTP傳輸方式。它可以在伺服器端註冊多個不同類型物件。 遠端存取的要求條件 方法的類型可輸出 方法的本體可輸出 方法必須要有兩個參數是輸出或內建 方法的第二個參數是指標型 方法的返回類型為
Thumbnail
gRPC是一款跨平台、高性能的RPC框架,他可以在任何環境下執行,主要用於後端為服務開發。在用戶端應用程式中,可以像本地物件那樣呼叫遠端伺服器的方法,因此可以創建出分散式應用。 使用 到https://github.com/protocolbuffers/protobuf/releases下
Thumbnail
gRPC是一款跨平台、高性能的RPC框架,他可以在任何環境下執行,主要用於後端為服務開發。在用戶端應用程式中,可以像本地物件那樣呼叫遠端伺服器的方法,因此可以創建出分散式應用。 使用 到https://github.com/protocolbuffers/protobuf/releases下
Thumbnail
👨‍💻 簡介 最近想要透過小實作來撰寫筆記,達到做中學的效果,因此就來實作個小爬蟲順便結合前面學到的package做一個小複習。
Thumbnail
👨‍💻 簡介 最近想要透過小實作來撰寫筆記,達到做中學的效果,因此就來實作個小爬蟲順便結合前面學到的package做一個小複習。
Thumbnail
RESTful Web 服務是現代 Web 和移動應用的核心,它們提供了一個標準化的方式來互動和交換數據。使用Gin構建這些服務是一種流行選擇,還記得之前提過的 嗎?本文將介紹一些最佳實踐,幫助你創建高效和可維護的RESTful服務。
Thumbnail
RESTful Web 服務是現代 Web 和移動應用的核心,它們提供了一個標準化的方式來互動和交換數據。使用Gin構建這些服務是一種流行選擇,還記得之前提過的 嗎?本文將介紹一些最佳實踐,幫助你創建高效和可維護的RESTful服務。
Thumbnail
微服務架構是一種把應用程序劃分成一系列小的、獨立的服務,每個服務都運行在其自己的進程中,並與其他服務通過 API 或 RPC 通信。在這篇文章中,我們將使用 Gin 作為我們的 HTTP 框架,並使用 gRPC 來實現服務間的通信。
Thumbnail
微服務架構是一種把應用程序劃分成一系列小的、獨立的服務,每個服務都運行在其自己的進程中,並與其他服務通過 API 或 RPC 通信。在這篇文章中,我們將使用 Gin 作為我們的 HTTP 框架,並使用 gRPC 來實現服務間的通信。
Thumbnail
嗨,開發者們!在網頁應用的世界中,即時通訊是一個越來越重要的特點。WebSocket提供了一個高效的方式來支持這種通訊,並且能夠在客戶端和伺服器之間提供雙向的即時通訊。本篇文章將會帶你走進WebSocket的世界,並學習如何在Gin框架中實現它。
Thumbnail
嗨,開發者們!在網頁應用的世界中,即時通訊是一個越來越重要的特點。WebSocket提供了一個高效的方式來支持這種通訊,並且能夠在客戶端和伺服器之間提供雙向的即時通訊。本篇文章將會帶你走進WebSocket的世界,並學習如何在Gin框架中實現它。
Thumbnail
這篇文章主要介紹 TCP 可靠性傳輸服務、連接管理、流量控制及擁塞控制等...
Thumbnail
這篇文章主要介紹 TCP 可靠性傳輸服務、連接管理、流量控制及擁塞控制等...
Thumbnail
Introduction to WebRTC 由於之後想要做的專題是跟即時視訊相關,在開始作業前想對webrtc有些基本的了解,結果就是一踏入了解就發現這個水深的可怕,之後每天除了寫一點go,也會花時間學習這個協定。WebRTC是個用於瀏覽器之間溝通的協定,透過NAT Traversal(STUN、
Thumbnail
Introduction to WebRTC 由於之後想要做的專題是跟即時視訊相關,在開始作業前想對webrtc有些基本的了解,結果就是一踏入了解就發現這個水深的可怕,之後每天除了寫一點go,也會花時間學習這個協定。WebRTC是個用於瀏覽器之間溝通的協定,透過NAT Traversal(STUN、
Thumbnail
What is WebSocket? WebSocket 是 HTML5 提供的一種網路傳輸協定,是瀏覽器(Client)與伺服器(Server)交換資料的方式之一。 與我們較為熟知的 HTTP 或 HTTPS 協定,同樣位於 OSI 模型的應用層,且基於傳輸層的 TCP 協定。
Thumbnail
What is WebSocket? WebSocket 是 HTML5 提供的一種網路傳輸協定,是瀏覽器(Client)與伺服器(Server)交換資料的方式之一。 與我們較為熟知的 HTTP 或 HTTPS 協定,同樣位於 OSI 模型的應用層,且基於傳輸層的 TCP 協定。
Thumbnail
從瀏覽器到伺服器之間究竟發生了哪些事情?才讓我們可以正常的瀏覽網頁呢?
Thumbnail
從瀏覽器到伺服器之間究竟發生了哪些事情?才讓我們可以正常的瀏覽網頁呢?
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News