En présentant le service créé cette fois, je présenterai le flux de développement et les points d'achoppement. Si cela aide les gens qui font des choses similaires ...
`` Je suis un partisan de l'équipe de football J-League appelée Kawasaki Frontale, mais je voulais consulter les données du passé après avoir battu le record de victoires consécutives (10 victoires consécutives!) En 2020. «Je voulais faire moi-même mieux comprendre WebAPI.
Le code source pour Front et Back est disponible sur GitHub.
--Python (Flacon dans la bibliothèque)
J'expliquerai le déroulement du développement tout en présentant les sites auxquels j'ai fait référence.
Pour la base, je me suis référé ici (Connexion à MySQL dans Docker avec Python).
version: "3"
services:
mysql_db_j:
container_name: "mysql_db_j"
image: mysql:5.7
command: mysqld --character-set-server=utf8 --collation-server=utf8_unicode_ci
environment: # Set up mysql database name and password
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: employees
MYSQL_USER: user
MYSQL_PASSWORD: password
networks:
- app-tier
python3_j:
restart: always
build: .
ports:
- '3000:3000'
- '5000:5000'
container_name: "python3_j"
working_dir: "/root/"
tty: true
stdin_open: true
depends_on:
- mysql_db_j
networks:
- app-tier
volumes:
- .:/root/app/
# command: python3 app/app.py
command: >
bash -c "python3 app/create_teamid.py
&& python3 app/create_result.py
&& python3 app/app.py
"
networks:
app-tier:
driver: bridge
J'ai lancé un conteneur MySQL et Python et les ai connectés. Aussi. Avec `` commande: '', la création de DB et Flask sont lancés au démarrage.
Le grattage utilise des requêtes '' et
beautifulsoup ''.
J'ai utilisé `` mysql-connector-python '' pour me connecter de Python à MySQl.
Reportez-vous ici
・ Résumé de l'utilisation de Python + mysql-connector-python
・ Comment installer et connecter MySQL Connector avec Python3 [Présentation de son utilisation confortable]
・ Document officiel
Les données enregistrées dans la base de données à l'aide de l'API Flask sont envoyées au format JSON. référence ・ Flacon facile à utiliser
De plus, vous devez utiliser
flask_cors```
Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.
J'obtiens une erreur comme celle-ci. Nécessaire pour les mesures CROS.
Installez Docker sur EC2 et démarrez Docker en vous référant à ce qui suit. Je voulais vraiment utiliser ECS ... référence
Lorsque j'essayais de développer une API Web, je n'ai pas trouvé beaucoup d'informations qui pourraient être utilisées comme référence pour la "première étape". Il existe différentes explications des principes de Restful, mais comment est-ce réellement la norme? Ce sera. Pour le moment, je l'ai conçu sur la base de mon expérience avec l'API Web.
Je me connectais à MySQL avec une bibliothèque appelée mysql-connector-python, mais lorsque je fonctionnais à partir de Python, il y avait un problème car il n'était pas enregistré même si j'ajoutais le traitement de la base de données. Je suis bloqué depuis longtemps, mais dans la Documentation officielle, "Connector / Python par défaut" Il est important d'appeler cette méthode après chaque transaction qui modifie les données dans une table qui utilise le moteur de stockage des transactions, car elle n'effectue pas de validation automatique. " Je dois lire le document correctement!
Lors de la publication du recto sur les pages Github, l'erreur suivante se produit
index.js:30 Mixed Content: The page at 'https://yuta97.github.io/j-search-front/' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'http://18.178.166.9:5000/continuous-records/match/win/?yearFrom=2017&yearTo=2019&continuou_recordFrom=2&continuou_recordTo=15'. This request has been blocked; the content must be served over HTTPS.
En bref, il semble que le problème soit que vous appelez le serveur API http sur le site https. Il semble qu'un tel contenu mixte soit obsolète. En guise de solution, j'ai essayé d'utiliser SSL pour le serveur API EC2, mais cela ne fonctionne pas ... Comme mesure minutieuse, hébergez avec S3 et utilisez la communication http à la réception.
Écrivez vos impressions paresseusement.
――Il est important pour votre santé mentale de faire petit et de s'améliorer comme le développement agile. ――Comment les gens dans les médias vérifient-ils les mises à jour des enregistrements? Existe-t-il une base de données? ―― Vous devez vous habituer à AWS lors de son utilisation. J'ai encore du mal à comprendre. «Je veux en savoir plus sur la sécurité. Si vous ne savez pas quel type d'attaque il y a, vous ne saurez pas quoi faire.
Je vais énumérer ce que je veux faire à l'avenir.
--Fonction de tri
Recommended Posts