Compare commits
2 Commits
6a2bf1ea4a
...
343af57742
Author | SHA1 | Date | |
---|---|---|---|
343af57742 | |||
e216e2a1b5 |
@ -78,6 +78,8 @@ abyss is a basic and mostly single user http server written in go made for uploa
|
||||
curl -F "file=@/path/to/file" -H "X-Auth: "$(cat /path/to/.key) http://localhost:3235/
|
||||
```
|
||||
|
||||
- it is also possible to add a `-Fsecret=` to your POST to make filenames bigger and harder to guess.
|
||||
|
||||
- you should probably create an `alias` or a `function` to do this automatically for you.
|
||||
<details>
|
||||
<summary>click for an example for bash/zsh:</summary>
|
||||
|
11
handlers.go
11
handlers.go
@ -160,6 +160,10 @@ func (app *Application) formHandler(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
filename := app.publicURL(file, ".txt")
|
||||
|
||||
if len(r.Form["secret"]) == 0 {
|
||||
filename = filename[:8]
|
||||
}
|
||||
|
||||
// reopening file because hash consumes it
|
||||
file, err = os.Open("/tmp/file.txt")
|
||||
if err != nil {
|
||||
@ -196,6 +200,10 @@ func (app *Application) curlHandler(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
filename := app.publicURL(file, filepath.Ext(handler.Filename))
|
||||
|
||||
if len(r.Form["secret"]) == 0 {
|
||||
filename = filename[:8]
|
||||
}
|
||||
|
||||
// reopen the file for copying, as the hash process consumed the file reader
|
||||
file, _, err = r.FormFile("file")
|
||||
if err != nil {
|
||||
@ -204,8 +212,7 @@ func (app *Application) curlHandler(w http.ResponseWriter, r *http.Request) {
|
||||
}
|
||||
defer file.Close()
|
||||
|
||||
err = SaveFile(app.lastUploadedFile, file)
|
||||
if err != nil {
|
||||
if err = SaveFile(app.lastUploadedFile, file); err != nil {
|
||||
fmt.Fprintf(w, "Error parsing file: %s", err.Error())
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user