Как отправить правильный http ответ от python? - PullRequest
0 голосов
/ 19 апреля 2020

У меня есть индексный файл. html, в котором есть javascript. Сценарий в основном создает WebSocket. Я хочу, чтобы он подключился к серверу, на котором запущен скрипт python, для отправки и ответа HTTP для связи. Я не уверен, что это вообще возможно, я новичок в сети, поэтому я все еще учусь

Javascript:

    function getData(){
        var socket = new WebSocket("ws:my server's ip:6474");
        socket.onopen = () => socket.send("Hello, world!");
    }

Python:

import socket

serverSock = socket.socket(socket.AF_INET, socket.SOCK_STREAM);
serverSock.bind(('0.0.0.0', 6474))
serverSock.listen(1)

while True:
     sock, addr = serverSock.accept()
     sock.send('HTTP/1.1\nContent-Type: text/html\n')
     data = sock.recv(1024)
     print(data.decode('utf-8').rstrip())

Причина, по которой у меня нет '200 OK', заключается в том, что это выдает ошибку.

getData () вызывается при нажатии кнопки в html. Это работает правильно. Я не получаю ошибок, но я не вижу текст на сервере. (кроме html из файла. js)

1 Ответ

0 голосов
/ 20 апреля 2020

Просто угадай, но после заголовка должна быть пустая строка

sock.send('HTTP/1.1\nContent-Type: text/html\n\n')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...