Проблемы с Angular и Python CORE - PullRequest
0 голосов
/ 28 марта 2020

Я пытался создать сайт с Angular и Bottle. У меня проблема с запросом POST. При использовании HttpClient consol log выглядит так:

consol log HttpClient

Ведьма, на мой взгляд, выглядит как пустой ответ. Вот код Angular:

this.http.post(
      this.baseurl,
      { "test": "test" }
    ).subscribe({
      next(data) {
        console.log(data);
      },
      error(err) {
        console.log(err);
      }
    })

В chrome devtools на вкладке Netwok Я ясно вижу ответ Python.

enter image description here

Вот код Python:

def hp_new_post():
    pd = json.loads(request.body.read().decode("utf-8"))
    gen_id = cl.eduo.posts.insert_one(
        {
            "h": pd['h'],
            "d": pd['d'],
            "t": pd['t']
        }
    )
    response.body = "Test 123"
    a = gen_id.inserted_id
    print(a)
    return str(a)

Просто для заметки я включил CORE в python, и это выглядит так:

app = Bottle()

class EnableCors(object):
    name = 'enable_cors'
    api = 2

    def apply(self, fn, context):
        def _enable_cors(*args, **kwargs):
            response.headers['Access-Control-Allow-Origin'] = '*'
            response.headers['Access-Control-Allow-Methods'] = 'GET, POST, PUT, OPTIONS'
            response.headers['Access-Control-Allow-Headers'] = 'Origin, Accept, Content-Type, X-Requested-With, X-CSRF-Token'

            if request.method != 'OPTIONS':
                return fn(*args, **kwargs)

        return _enable_cors

app.install(EnableCors())
...