簡體   English   中英

如何在新的 Onesignal React-native 中添加 header

[英]How to add header in new Onesignal React-native

 Error: {"errors": ["Please include a case-sensitive header of Authorization: Basic <YOUR-REST-API-KEY-HERE> with a valid REST API key."], "reference": ["https://documentation.onesignal.com/docs/accounts-and-keys#section-keys-ids"]}

我嘗試如下但錯誤如上

sendNotification = async (data) => {

    const { userId } = await OneSignal.getDeviceState();
    const notificationObj = {
      contents: { en: "Message Body" },
      include_player_ids: [userId],
      Authorization: "Basic APIKEY",
      headings: { en: 'You have new notification' },
      android_channel_id: 'id',
      template_id: 'id',
      buttons: [{ "id": "open_flat", "text": "OPEN HOSTING", "icon": "ic_menu_share" }],
      include_external_user_ids: ["13245-123455"],
    };

    const jsonString = JSON.stringify(notificationObj);

    OneSignal.postNotification(jsonString, (success) => {
      console.log("Success:", success);
    }, (error) => {
      console.log("Error:", error);
    });
      };

    //Sending demo 
    useEffect(() => {
        sendNotification()
      })

我收到錯誤:錯誤:{“錯誤”:[“請包含區分大小寫的 header 授權:具有有效 REST API 密鑰的基本。” com/docs/accounts-and-keys#section-keys-ids"]}

幾個月后,我嘗試使用 fetch 和 Auth header 發送通知

您需要將 APIKEY 替換為您的實際 API 密鑰,例如您的 API 密鑰是“MY_API_KEY123456”,那么 Z099FB995346F31C749F6E40DB034F395E3Z 應該是“MY_API_KEY123456”

對於任何人有這個錯誤

 let headers = {
    'Content-Type': 'application/json; charset=utf-8',
    Authorization: `Basic '<API-KEY-HERE>'`,
};
let endpoint = 'https://onesignal.com/api/v1/notifications';
let params = {
    method: 'POST',
    headers: headers,
    body: JSON.stringify({
        app_id: 'App Id',
        include_external_user_ids: [{'userid'},{'userid2'}], --> Optional
        headings: { en: 'DATA'},
        contents: { en: 'DATA'},
        buttons: [{ "id": 'id', "text": 'OPEN', "icon": "ic_baseline_open_in_new_24" }], --> OPTIONAL
        data: 'Extra data as json'

    }),
};
fetch(endpoint, params).then(res => { console.log('sucess NotiButton') }).catch(error => console.log('error' + error));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM