Firebase не может зарегистрировать пользователей с помощью электронной почты и пароля

RedirectToAction метод Возвращает ответ HTTP 302 браузеру, что заставляет браузер делать запрос GET для указанного действия.

Вы должны либо хранить данные во временном хранилище, например TempData / Session. TempData использует Session в качестве хранилища резервных копий.

Если вы хотите сохранить его в реальном состоянии без учета состояния, вы должны передать идентификатор в строке запроса и Получить список элементов в своем действии GET. Истинный безграждан.

return RedirectToAction("Question", new { email = email,id=model.ID });

и в вашем методе GET

public ActionResult Question(string email,int id)
{

   List<QuestionClass.Tabelfields> fadd=repositary.GetTabelFieldsFromID(id);
    //Do whatever with this
   return View();
}

Предполагая, что repositary.GetTabelFieldsFromID возвращает список из TabelFields из идентификатора

1
задан Y. Chen 11 March 2019 в 20:57
поделиться

1 ответ

Ваш код абсолютно правильный. Однако, похоже, что в методе createUserWithEmailAndPassword(email, password1) есть лишний пробел, который вызывает проблему.

Пожалуйста, измените его на createUserWithEmailAndPassword(email,password1).

Кроме того, когда я нажимаю Зарегистрировать, кажется, что вы используете Form Tag, и значения отображаются в адресной строке (см. Ниже). Предложите, пожалуйста, отметьте, так как вы можете не отображать Детали в адресной строке. enter image description here

Пользователи зарегистрировали снимок экрана:

enter image description here

Наконец, вы используя два поля в качестве пароля, убедитесь, что у вас есть логика Записано, что оба поля пароля должны совпадать. Добавляем код, который я пробовал ниже, и у него нет тегов Form.

var password2 = document.querySelector("#password2").value;
var register_button = document.querySelector("#register_button");



  var config = {
    apiKey: "111",
    authDomain: "1111",
    databaseURL: "1111",
    projectId: "1111",
    storageBucket: "11111",
    messagingSenderId: "111"
  };
  firebase.initializeApp(config);


register_button.onclick = function() {
  var email = document.querySelector("#email").value;
  var password1 = document.querySelector("#password1").value;
  var password2= document.querySelector("#password2").value;

  //alert("heyman im in register button");
  //console.log("Email" +email);
 // console.log("password1 Value" +password1);
 // console.log("password2 Value" +password2);

  firebase.auth().createUserWithEmailAndPassword(email, password1).catch(function(error) {
    //alert("hello");
    var errorCode = error.code;
    var errorMessage = error.message;
    document.querySelector("#message").innerHTML = errorCode + ": " + errorMessage;
  });
}
<!DOCTYPE html>
<html>
<head>
  <title>Registration </title>
  <script src="https://www.gstatic.com/firebasejs/5.8.6/firebase.js"></script>
  <script src="https://www.gstatic.com/firebasejs/5.8.6/firebase-app.js"></script>
  <script src="https://www.gstatic.com/firebasejs/5.8.6/firebase-auth.js"></script>
  <script src="https://www.gstatic.com/firebasejs/5.8.6/firebase-database.js"></script>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
  <script src="https://www.gstatic.com/firebasejs/5.8.6/firebase.js"></script>
  <script src="signup.js" defer></script>
</head>

<body>    
    <div class="header">
        <h2>Sign up as a Language Learner</h2>
    </div>
    <div class="input">
      <input id="username" type="text" name="username" placeholder="Username">
    </div>
    <div class="input">
      <input id="email" type="email" name="email" placeholder="Email">
    </div>
    <div class="input">
      <input id="password1" type="password" name="password_1" placeholder="Password">
    </div>
    <div class="input">
      <input id="password2" type="password" name="password_2" placeholder="Confirm Password">
    </div>
    <div>
      <p id="message">
      </p>
    </div>
    <div class="input">
      <button id="register_button" class="btn" name="signup">Register</button>
        <p class="input">Already a member? <a href="login.html">Sign in</a>
       &nbsp <a href="/">Cancel</a>
      </p>
    </div>
  <div id="signup_success">
    <h2>Sign-up Successful!</h2>
  </div>

</body>
</html>

0
ответ дан Fire-In-D-Hole 11 March 2019 в 20:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: