Ошибка кросс-источника при использовании облачных функций в back4app - PullRequest
0 голосов
/ 30 октября 2019
Getting CORS error when calling cloud function in back4app.

Error:     

Доступ к XMLHttpRequest в 'https://parseapi.back4app.com/functions/hello' из источника' http://localhost:8100' заблокирован политикой CORS: в запрошенном ресурсе отсутствует заголовок «Access-Control-Allow-Origin».

In client code cloud function implemented in home page 

 home.page.ts:

 Parse.Cloud.run('hello').then(function (ratings) {

   console.log("updated");

 }).catch((error) => {

   console.log(error);

   console.log("fail"); 

 });

 Cloud function:

In back4app added main.js file with cloud code implementation

  main.js:

 Parse.Cloud.define('hello', function(req, res) {

   Parse.Cloud.useMasterKey();

   return 'Hi';    
 });

1 Ответ

0 голосов
/ 31 октября 2019

Это может быть связано с версией Parse Server.

Не могли бы вы посмотреть, какую версию Parse Server вы используете? Пожалуйста, найдите эту информацию, следуя этому руководству .

Если это 2.X, вы должны развернуть функцию со структурой ниже:

main.js:

Parse.Cloud.define('hello', function(req, res) {    
   response.success('Hello')
});

Код Parse.Cloud.useMasterKey(); устарел. Подробнее здесь .

Если это 3.X, вы можете развернуть что-то вроде:

Parse.Cloud.define('hello', (req) => {    
   return 'Hello';
});
  • Проверьте, правильно ли вы инициализировали ключина вашей стороне.

Если это все еще не работает, пожалуйста, свяжитесь с командой Back4App в живом чате = D

...