У меня есть скрипт Python, который выводит фрагмент текста в строку. Я пытаюсь сделать этот фрагмент текста доступным в Интернете, чтобы я мог перенести его на микроконтроллер Arduino. Другими словами, рабочий процесс выглядит следующим образом: Источник текста> Python> ??? > Arduino> Окончательный вывод.
Я использовал пример кода Flask от Heroku, чтобы начать экспериментировать с работой этой функциональности. Их код для Flask следующий:
import os
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello():
return 'Hello World!'
if __name__ == '__main__':
# Bind to PORT if defined, otherwise default to 5000.
port = int(os.environ.get('PORT', 5000))
app.run(host='0.0.0.0', port=port)
Когда я пытаюсь выполнить HTTP-запрос на получение в моем приложении heroku, оно дает мне 404. Я подозреваю, что это потому, что этот скрипт ничего не выводит. Например, когда я использую это приложение для обработки с веб-сайта Processing.org для выполнения запроса GET:
import processing.net.*;
Client c;
String data;
void setup() {
size(200, 200);
background(50);
fill(200);
c = new Client(this, "http://freezing-stream-5123.herokuapp.com/", 80); // Connect to server on port 80
c.write("GET / HTTP/1.1\n"); // Use the HTTP "GET" command to ask for a Web page
c.write("Host: my_domain_name.com\n\n"); // Be polite and say who we are
}
void draw() {
if (c.available() > 0) { // If there's incoming data from the client...
data = c.readString(); // ...then grab it and print it
println(data);
}
}
Что возвращается, так это:
HTTP/1.1 200 OK
Date: Sat, 31 Mar 2012 22:27:10 GMT
Server: Apache
Cache-control: no-cache, no-store
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Pragma: no-cache
Content-Length: 968
Connection: close
Content-Type: text/html; charset=UTF-8
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html><head><meta http- equiv="refresh" content="0;url=http://earthlink-help.com/main?
InterceptSource=0&ClientLocation=us&ParticipantID=xj6e3468k634hy3945zg3zkhfn7zfgf6&FailureMode =1&SearchQuery=&FailedURI=http%3A%2F%2Fmy_domain_name.com%2F&AddInType=4&Version=2.1.8-1.90base&Referer=&Implementation=0"/><script type="text/javascript">url="http://earthlink-help.com/main?InterceptSource=0&ClientLocation=us&ParticipantID=xj6e3468k634hy3945zg3zkhfn7zfgf6&FailureMode=1&SearchQuery=&FailedURI=http%3A%2F%2Fmy_domain_name.com%2F&AddInType=4&Version=2.1.8-1.90base&Referer=&Implementation=0";if(top.location!=location){var w=window,d=document,e=d.documentElement,b=d.body,x=w.innerWidth||e.clientWidth||b.clientWidth,y=w.innerHeight||e.clientHeight||b.clientHeight;url+="&w="+x+"&h="+y;}window.
location.replace(url);</script></head><body></body></html>
АКА: Там ничего нет. «Hello world» действительно появляется, когда я использую curl, чтобы вытащить веб-страницу, но я не знаю, означает ли это что-нибудь.
Итак, мой вопрос: может ли кто-нибудь указать мне на что-то, что приклеит мою строку к чему-то, из чего я могу ее извлечь? Я понимаю, что это, вероятно, глупый вопрос, но я полностью потерялся в море веб-серверов и т. Д. И был бы признателен за некоторые рекомендации.
Спасибо!