Можно ли получить несколько данных с помощью fetch? - PullRequest
0 голосов
/ 09 января 2020

Можно ли получить несколько данных с помощью fetch? В моем примере я получаю значение «inputDest» (электронная почта) и «a» (имя). Поэтому моя цель здесь - получить значения 'inputDest' и 'a' и отправить их по электронной почте.

const inputDest = document.querySelector('input[name=dest]');
   const a=document.querySelector('input[name=a]');
    document.querySelector('button[name=send-mail]').addEventListener('click', function(){
        fetch('https://us-central1-nastava-3ae81.cloudfunctions.net/sendMail?dest='+inputDest.value+'sendMail?a='+a.value)
            .then(response => response.text())
            .then(text => {
                console.log(text);
            });
    }, false);

Если я оставляю такой код, конечно, я получаю ошибку: Ошибка: Невозможно отправить mail - все получатели были отклонены: 553-5.1.3 Адрес получателя не является 553 5.1.3 действительным адресом RF C -5321. m189sm881135ioa.17 - gsmtp

Итак, внутри моих функций в основном это

exports.sendMail = functions.https.onRequest((req, res) => {
cors(req, res,  () => {

    const dest = req.query.dest;
    const a=req.query.a;

    const mailOptions = {
        from: '<something@gmail.com>',
        to: dest,
        subject: a, 
        html: `<p style="font-size: 16px;">Pickle </p> ` 
    };

    return transporter.sendMail(mailOptions, (erro, info) => {
        if(erro){
            return res.send(erro.toString());
        }
        return res.send('Sended');
    });
});    
});

1 Ответ

3 голосов
/ 09 января 2020

Вы можете отправить несколько значений на сервер в (в данном случае) запросе GET, используя символы ? и &.

Символ ? указывает, что следующая последовательность строк является значениями, которые может прочитать сервер.
Символ & является разделением между значениями.
Каждое значение должно быть ключ-значение пара, подобная key=value.

Рассмотрим следующий запрос fetch.

fetch('https://example.com/user?first_name=foo&last_name=bar')

В этом примере мы отправляем first_name и last_name в https://example.com/user URL. Там сервер может прочитать эти значения.

В PHP это будет похоже на приведенный ниже пример.

$first_name = $_GET['first_name']; // foo
$last_name = $_GET['last_name']; // bar

Надеюсь, это поможет вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...