Skip to content

Instantly share code, notes, and snippets.

@cheikhsimsol
cheikhsimsol / video_stream.go
Created December 30, 2024 19:37
Full video stream example
package main
import (
"fmt"
"io"
"log"
"net/http"
"strconv"
"strings"
)
package main
import (
"log"
"net/http"
"net/http/httputil"
"net/url"
"github.com/gin-gonic/gin"
)
router.Use(func(c *gin.Context) {
// Forward the request to the target server
proxy.ServeHTTP(c.Writer, c.Request)
})
package main
import (
"log"
"net/http"
"net/http/httputil"
"net/url"
"github.com/gin-gonic/gin"
)
target, _ := url.Parse("http://localhost:8081/base/")
// Create a reverse proxy
proxy := &httputil.ReverseProxy{
Rewrite: func(r *httputil.ProxyRequest) {
log.Println("Forwarding:", r.In.URL.String())
r.SetURL(target)
r.Out.Host = r.In.Host
},
}
package main
import (
"net/http"
"github.com/gin-gonic/gin"
)
func launchSecondServer() {
package main
import (
"context"
"fmt"
"io"
"log"
"net/http"
"golang.org/x/oauth2"
mux.HandleFunc("GET /consume", func(w http.ResponseWriter, r *http.Request) {
ctx := context.Background()
code := r.FormValue("code")
state := r.FormValue("state")
if state != "state" {
http.Error(w, "Error, mismatched state", http.StatusBadRequest)
return
}
...
func main() {
mux := http.NewServeMux()
conf := &oauth2.Config{
ClientID: "RANDOM",
ClientSecret: "RANDOM",
Scopes: []string{"offline_access"},
Endpoint: oauth2.Endpoint{
TokenURL: "https://oauth.wiremockapi.cloud/oauth/token",
package main
...
func main() {
mux := http.NewServeMux()
// Map a route to handle requests to the root path ("/")
mux.HandleFunc("GET /login", func(w http.ResponseWriter, r *http.Request) {