1

Я включил объект storyblok и функцию serializeArray:Как использовать службу рассылки Storyblok в Javascript/Typcript?

import { serializeArray } from '../utils'; 
import { storyblok } from '../shims/Storyblok'; 

Теперь я хочу, чтобы передать данные формы функции SendEmail. Как это работает?

submit(event:Event) { 
    event.preventDefault(); 
    let formData = serializeArray(<HTMLFormElement> this.$()); 

    // what to do here? 

    storyblok.sendEmail(message, 
     // success 
     function(data:any) { 
      console.log(data); 
      console.log('success'); 
     }, 
     // error 
     function(data:any) { 
      console.log(data); 
      console.log('error'); 
     } 
    ) 
} 

ответ

0

Storyblok форма контакта API позволяет передать параметр в следующем формате:

var message = {}; 
message['message[email]'] = 'Valid Email goes here'; // assign your email field here 
message['message[body]'] = 'This is my Message'; // assign your message field here 

Эти 2 поля (email & body) требуется - вы можете передать столько параметров, как вы хотите к API.

Вы можете попробовать ваш запрос непосредственно с помощью следующей Curl запрос

curl 'https://api.storyblok.com/v1/messages?token={{YOUR_TOKEN}}' 
-H 'pragma: no-cache' 
-H 'origin: {{YOUR_SPACE_DOMAIN}}' 
-H 'accept-encoding: gzip, deflate, br' 
-H 'x-requested-with: XMLHttpRequest' 
-H 'accept-language: de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4,hr;q=0.2,el;q=0.2,bg;q=0.2,sr;q=0.2,fr;q=0.2,sq;q=0.2' 
-H 'user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36' 
-H 'content-type: application/x-www-form-urlencoded' 
-H 'accept: */*' 
-H 'cache-control: no-cache' 
-H 'authority: api.storyblok.com' 
-H 'referer: {{YOUR_SPACE_DOMAIN}}' --data 'message%5Bemail%5D=test%40test.test&message%5Bbody%5D=yourMessageGoesHere' --compressed 
Смежные вопросы