@trigun117
Backend

Как получить доступ к запароленному API не светя пароль в JS?

Здравствуйте. Написал бекенд для веб-приложения который отдает JSON и хочу отобразить его на странице. Я создал страницу авторизации для доступа к JSON и чтобы получать его и отображать был написан такой вот код.

fetch('/json', {
        method: 'POST',
        body: new URLSearchParams("password=test")
    })
        .then(res => res.json())
        .then((out) => {
            document.getElementsByTagName('textarea')[0].innerHTML = out.Items.join("\n");
        })
        .catch(err => { throw err; });


Проблема в том что пароль к странице авторизации виден в открытом виде на стороне пользователя. body: new URLSearchParams("password=test")

Вот код хендлера, который это обрабатывает на стороне сервера.

func sendJSONHandler(w http.ResponseWriter, r *http.Request) {
	if r.Method == "GET" {
		http.ServeFile(w, r, "template/api/api.html")
	} else if r.Method == "POST" {
		r.ParseForm()
		if r.Form["password"][0] == apiPassword {
			j := struct {
				Items []string
			}{Items: code.Struct.Field}
			w.Header().Set("Access-Control-Allow-Origin", "*")
			json.NewEncoder(w).Encode(j)
		} else {
			http.ServeFile(w, r, "template/api/api.html")
		}
	}
}


Код страницы авторизации.

<form action="/json" method="post">
  <input class="form-control" type="password" name="password" id="passinput" placeholder="Password" required>
  <input class="btn btn-outline-danger" type="submit" value="ENTER" id="subm">
</form>


Как скрыть пароль в JS? или же есть более правильное решение.
  • Вопрос задан
  • 211 просмотров
Решения вопроса 1
rockon404
@rockon404
Frontend Developer
OAuth, jwt
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы