использование OneSignal Api в проекте ionic 4

#angular #api #ionic-framework #ionic4 #onesignal

#angular #API #ionic-framework #ionic4 #onesignal

Вопрос:

Я пытаюсь создать push-уведомление с помощью post-запроса с ionic 4 помощью one signal

вот как я отправляю запрос POST:

     async presentAlertMultipleButtons() {
        const alert = await this.alertController.create({
            header: 'Confirm',
            subHeader: 'Your dress is added',
            message: 'Admin team will review the dress and post it as soon as possible.',
            buttons: ['Ok'],
            mode: 'ios'
        });

        await alert.present();
        const post_data = {
            'app_id': 'xxxxxxxxxxxxxxxxxxxxxx',
            'contents': {
                'en': 'new dress added to fostania'
            },
            'headings': {
                'en': 'new dress'
            },
            'included_segments': ['admins'],
        }
        const httpOptions2 = {
            headers: new HttpHeaders({
                'Content-Type': 'application/json',
                'Authorization': 'Basic xxxxxxxxxxxxxxxxxxxxxxxxx'
            })
        };
        this.httpClient.post('https://onesignal.com/api/v1/notifications', post_data, httpOptions2);

        this.router.navigate(['/list']);
    }
 

Я добавил сообщение после отображения уведомления (оповещения) для пользователя о завершении операции.

И он не отправляется, даже без ответа вообще!

Комментарии:

1. Где в вашем приложении вы подписываетесь на сообщение?

2. после отображения предупреждения для пользователя, а затем я вызываю эту функцию presentAlertMultipleButtons , когда пользователи отправляют необходимые данные. проверьте вопрос после обновления

3. Если вы никогда не запускаете subscribe вызов post, он никогда не будет запущен.

Ответ №1:

Благодаря комментарию @R.Richards.

Я изменил this.httpClient.post('https://onesignal.com/api/v1/notifications', post_data, httpOptions2);
на

 this.httpClient.post('https://onesignal.com/api/v1/notifications', post_data, httpOptions2)
                        .subscribe(new_data => {
                            console.log(new_data)
                        }, error => {
                            console.log(error);
                        });
 

и это работает сейчас