Не удалось найти appSecret для служб push-уведомлений в облаке IBM Bluemix - PullRequest
0 голосов
/ 18 января 2019

Я хотел бы использовать службу PushNotinfication через приложение Java, поэтому мне нужны appGuid и appSecret службы. (На рисунке, прикрепленном к этому сообщению, показано окно, в котором должен отображаться appSecret, но он этого не сделал.) введите здесь описание изображения В некоторых документах говорится, что appSecret генерируется автоматически, когда приложение привязано к сервису. но я не могу понять о процессе связывания. Поэтому я хотел бы знать процесс выпуска appSecret службы PushNotification как можно более подробно. Буду признателен, если кто-нибудь сможет объяснить с помощью снимка экрана окна каждого процесса.

1 Ответ

0 голосов
/ 21 января 2019

@ ken Мы поддерживаем и AppSecret, и Tokens в swagger (http://imfpush.ng.bluemix.net/imfpush/).). Для новых созданных экземпляров не будет никакого AppSecret, поскольку это экземпляры, основанные на IAM. И нет никакого другого пути, кроме способа аутентификации Token. , Эти экземпляры, созданные до июня 2018 года, будут работать с Appsecret. Но новые экземпляры будут работать только с токеном IAM. Это введено для лучшей безопасности. Пожалуйста, обратитесь к нашим примечаниям к выпуску для того же https://console.bluemix.net/docs/services/mobilepush/release-notes.html#release-notes. Чтобы узнать больше о реализации IAM в службе push-уведомлений, обратитесь к https://console.bluemix.net/docs/services/mobilepush/push_iam.html#service-access-management Обратитесь к вопросу 21 в нашем разделе часто задаваемых вопросов https://console.bluemix.net/docs/services/mobilepush/push_faq.html#faq, чтобы узнать, как извлечь токен и использовать.

Относительно Swagger введено новое поле авторизации для отправки токена IAM. Либо поле Авторизация, либо appSecret является обязательным.

Swagger

Пожалуйста, обратитесь к файлу sdk сервера (https://github.com/ibm-bluemix-mobile-services/bms-pushnotifications-serversdk-java) readme, где клиент должен инициализировать Push с помощью ApiKey для нового экземпляра push, который IAM-токен автоматически генерирует методом инициализации ..

PushNotifications.initWithApiKey("YOUR_APPLICATION_ID", "YOUR-BLUEMIX-PUSH-APIKEY", PushNotifications.US_SOUTH_REGION);

Initialize

Sample

public static void main(String[] args) {


    PushNotifications.initWithApiKey("appId", "APIKey", PushNotifications.US_SOUTH_REGION);
    Message message = new Message.Builder().alert("20% Off Offer for you").url("www.ibm.com").build();
    String [] deviceIds = {"deviceIds"};
    Target target = new Target.Builder().deviceIds(deviceIds).build();

    Notification notification = new Notification.Builder().message(message).target(target).build(); 
    PushNotifications.send(notification, new PushNotificationsResponseListener(){

        public void onSuccess(int statusCode, String responseBody) {
            System.out.println(responseBody);
            System.out.println("Successfully sent push notification! Status code: " + statusCode + " Response body: " + responseBody);
        }

        public void onFailure(Integer statusCode, String responseBody, Throwable t) {
            System.out.println("Failed sent push notification. Status code: " + statusCode + " Response body: " + responseBody);
            if(t != null){
                t.printStackTrace();
            }
        }
    });
}

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

...