Fix cookie credentials bug, add prod mode

master
Chakib Benziane 5 years ago
parent e97dc51f8d
commit 5ff79cbec3

@ -57,6 +57,7 @@ func sessionHandler(c *gin.Context) {
return return
} }
// Was used by ln-charge
func invoiceCbHandler(c *gin.Context) { func invoiceCbHandler(c *gin.Context) {
invoice := ln.Invoice{} invoice := ln.Invoice{}
@ -101,3 +102,21 @@ func invoiceCbHandler(c *gin.Context) {
return return
} }
func downHandler(c *gin.Context) {
sess := sessions.Default(c)
test := sess.Get("test")
log.Printf("%#v", test)
if test != nil {
sess.Clear()
sess.Save()
c.String(http.StatusOK, "I remember you")
} else {
sess.Set("test", 1)
sess.Save()
c.String(http.StatusOK, "i dont remember you")
}
return
}

@ -20,9 +20,9 @@ type API struct {
func (api *API) Run() { func (api *API) Run() {
// Get last session if it exists // Get last session if it exists
api.router.GET("/api/session", sessionHandler) api.router.GET("/a/session", sessionHandler)
uploadRoute := api.router.Group("/api/upload") uploadRoute := api.router.Group("/a/u")
{ {
uploadRoute.POST("", UploadCtrl.New) uploadRoute.POST("", UploadCtrl.New)
uploadRoute.PUT(":id", UploadCtrl.Upload) uploadRoute.PUT(":id", UploadCtrl.Upload)
@ -31,6 +31,12 @@ func (api *API) Run() {
uploadRoute.GET("/poll/:id", UploadCtrl.PollStatus) uploadRoute.GET("/poll/:id", UploadCtrl.PollStatus)
} }
// Download route
downRoute := api.router.Group("/a/d")
{
downRoute.GET("t", downHandler)
}
// Websocket server // Websocket server
//api.router.GET("/ws", ws.Serve) //api.router.GET("/ws", ws.Serve)
@ -51,7 +57,7 @@ func NewAPI() *API {
panic(err) panic(err)
} }
router.Use(sessions.Sessions("bit4sat-session", sessionStore)) router.Use(sessions.Sessions("bit4sat", sessionStore))
// //
// //

@ -42,15 +42,18 @@ func getRate(currency string) (float64, error) {
// TODO: remove on prod and use normal client // TODO: remove on prod and use normal client
// Used for connectivity problems // Used for connectivity problems
proxyUrl, err := url.Parse(config.HttpProxy) client := &http.Client{}
if err != nil { if config.Env == "dev" {
log.Fatal(err)
}
client := &http.Client{ proxyUrl, err := url.Parse(config.HttpProxy)
Transport: &http.Transport{ if err != nil {
log.Fatal(err)
}
client.Transport = &http.Transport{
Proxy: http.ProxyURL(proxyUrl), Proxy: http.ProxyURL(proxyUrl),
}, }
} }
resp, err := client.Get(reqUri) resp, err := client.Get(reqUri)

@ -13,6 +13,7 @@ const (
) )
var ( var (
Env,
StoragePath, StoragePath,
ApiPort, ApiPort,
ApiInterface, ApiInterface,
@ -66,6 +67,7 @@ func init() {
flag.StringVar(&HttpProxy, "http-proxy", "", "http proxy for clients") flag.StringVar(&HttpProxy, "http-proxy", "", "http proxy for clients")
flag.StringVar(&ShortIdSalt, "short-id-salt", "bit4sat-23591", "hashid salt") flag.StringVar(&ShortIdSalt, "short-id-salt", "bit4sat-23591", "hashid salt")
flag.StringVar(&Env, "env", "dev", "dev or prod")
//log.Printf("locking macaroon to ip %s", LockMacaroonIp) //log.Printf("locking macaroon to ip %s", LockMacaroonIp)

@ -31,6 +31,7 @@ services:
- SESSION_SECRET=Ai7fCy36UE5cb9wcmdAxxRXwYyQDsDMr6rYocA6Eava7pdiB29EusLbb9sTYWS1e - SESSION_SECRET=Ai7fCy36UE5cb9wcmdAxxRXwYyQDsDMr6rYocA6Eava7pdiB29EusLbb9sTYWS1e
- GRPC_SSL_CIPHER_SUITES="HIGH+ECDSA" - GRPC_SSL_CIPHER_SUITES="HIGH+ECDSA"
- SHORT_ID_SALT=Czp6NtlGpt0ebzG1DuUND1nMftLUR77c - SHORT_ID_SALT=Czp6NtlGpt0ebzG1DuUND1nMftLUR77c
- ENV=dev
# Used in case of ssl problems # Used in case of ssl problems
- HTTP_PROXY=http://tinyproxy:8888 - HTTP_PROXY=http://tinyproxy:8888

@ -10,9 +10,9 @@ header / {
} }
proxy /d localhost:8880
proxy /api localhost:8880 { ## API
proxy /a localhost:8880 {
transparent transparent
} }

@ -1,5 +1,5 @@
<template> <template>
<div @dragenter.stop.prevent @dragover.stop.prevent @drop.stop.prevent="drop" id="upload" class="flex flex-column ph4 pv4 ba b--dashed bw2 b--orange br4 bg-near-white mid-gray"> <div @dragenter.stop.prevent @dragover.stop.prevent @drop.stop.prevent="drop" id="upload" class="flex flex-column ph4 pv4 ba bw1 b--light-red br1 bg-near-white mid-gray">
<div class="title f6 b lh-title ttu tc">drop files here</div> <div class="title f6 b lh-title ttu tc">drop files here</div>

@ -5,10 +5,10 @@ import 'babel-polyfill';
const endPoints = { const endPoints = {
upload: '/api/upload', upload: '/a/u',
session: '/api/session', session: '/a/session',
pollstatus: '/api/upload/poll', pollstatus: '/a/u/poll',
checkstatus: '/api/upload/check' checkstatus: '/a/u/check'
} }
@ -35,7 +35,7 @@ export async function checkUploadStatus(uploadId){
let req = new Request(endPoints.checkstatus + '/' + uploadId,{ let req = new Request(endPoints.checkstatus + '/' + uploadId,{
method: 'GET', method: 'GET',
credentials: 'same-origin,' credentials: 'same-origin'
}) })
let res = await fetch(req) let res = await fetch(req)
@ -56,7 +56,7 @@ export async function pollUploadStatus(uploadId){
let req = new Request(endPoints.pollstatus + '/' + uploadId,{ let req = new Request(endPoints.pollstatus + '/' + uploadId,{
method: 'GET', method: 'GET',
credentials: 'same-origin,' credentials: 'same-origin'
}) })
let res = await fetch(req) let res = await fetch(req)

Loading…
Cancel
Save