프리젠터 API 사용 (python/FastAPI)
7277 단어 PleasanterFastAPI프리잔터파이썬api
개요
htps : // 이 m / 아무리 / ms / 147f 베아 348657 아 4 fbf1
↑의 내용을 베이스로 해, 이번은 python을 사용해 프리젠터의 「API 기능」을 사용해 보기로 했습니다.
파이썬을 사용할 때 프레임 워크를 채택해 보았습니다.
전제 조건
이러한 세부 사항은 생략.
결론
파이썬을 사용하여 프리젠터에 데이터 등록을 할 수 있었다. (API에서)
프레임워크의 FastAPI는 좀처럼 사용할 수 있는 것으로 밝혀졌다.
상세
파이썬 프레임 워크 선택
향후의 전개를 생각해, 프레임워크를 이용하는 것에.
대략 조사해 FastAPI가 좋을 것 같기 때문에 채용.
설치 작업 등에 대해서는 생략.
정보는 이쪽.
h tps : // / 후스 타피. 치안고. 코 m/그럼/
FastAPI로 개발 준비
설명서를 바탕으로 최소 소스를 만들어 웹 서버를 시작합니다.
웹 서버는 uvicorn이라는 사람.
소스는 이쪽. 이것만으로 OK.
main.pyfrom fastapi import FastAPI
app = FastAPI()
@app.get("/")
def read_root():
return {"Hello": "World"}
명령 프롬프트에서 웹 서버를 시작합니다.
포트는 디폴트라고 경합했기 때문에 8010을 지정.
바로 시작합니다.
>uvicorn main:app --reload --port 8010
INFO: Uvicorn running on http://127.0.0.1:8010 (Press CTRL+C to quit)
INFO: Started reloader process [26816] using statreload
INFO: Started server process [22304]
INFO: Waiting for application startup.
INFO: Application startup complete.
브라우저에서 표시를 확인. 표시 OK.
문서도 마음대로 할 수 버린다.
꽤 놀랍습니다. 여담입니다만.
FastAPI (python)에서 프리젠터에 등록
시험에 「/test_create」라고 하는 엔드포인트를 작성해, 그 안에서 프리젠터에 데이터를 등록하도록(듯이) 한다.
main.pyimport requests
import json
from fastapi import FastAPI
from requests_ntlm import HttpNtlmAuth
app = FastAPI()
@app.get("/")
def read_root():
return {"Hello": "World"}
@app.get("/test_create")
def test_create():
url = 'http://192.168.10.10/pleasanter/api/items/12389/create'
json_str = '''\
{
"ApiVersion": 1.1,
"ApiKey": "ea55625bb586d27df01c281e5ef5464e4bbe6bc86d1451a24fd430351198ce0bbabc467cdd1d0ebdf4045ec22922dfce7a9f47a8241559229a7d5129d2329879",
"ClassHash": {
"ClassA": "氏名2",
"ClassB": "所属3",
"ClassC": "場所4"
},
"DateHash": {
"DateA": "2020/11/08 08:00",
"DateB": "2020/11/08 17:00"
},
"Body": "通常勤務です"
}
'''
json_data = json.loads(json_str)
headers = {'content-type': 'application/json; charset=UTF-8'}
response = requests.post(url, json=json_data, headers=headers,
auth=HttpNtlmAuth('xxx\xxx', 'xxx'))
return (response.text)
↑ 문서를 사용하여 실행하면. . .
성공! !
"{\"Id\":12410,\"StatusCode\":200,\"Message\":\"\\"이름 2\\"을(를) 만들었습니다.\"}"
프리잔터의 화면에서 확인해 OK!
등록할 수 있었으므로, 여기까지로 끝.
Reference
이 문제에 관하여(프리젠터 API 사용 (python/FastAPI)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/donraku/items/5e5a59d2541b0fcec528
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
파이썬 프레임 워크 선택
향후의 전개를 생각해, 프레임워크를 이용하는 것에.
대략 조사해 FastAPI가 좋을 것 같기 때문에 채용.
설치 작업 등에 대해서는 생략.
정보는 이쪽.
h tps : // / 후스 타피. 치안고. 코 m/그럼/
FastAPI로 개발 준비
설명서를 바탕으로 최소 소스를 만들어 웹 서버를 시작합니다.
웹 서버는 uvicorn이라는 사람.
소스는 이쪽. 이것만으로 OK.
main.py
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def read_root():
return {"Hello": "World"}
명령 프롬프트에서 웹 서버를 시작합니다.
포트는 디폴트라고 경합했기 때문에 8010을 지정.
바로 시작합니다.
>uvicorn main:app --reload --port 8010
INFO: Uvicorn running on http://127.0.0.1:8010 (Press CTRL+C to quit)
INFO: Started reloader process [26816] using statreload
INFO: Started server process [22304]
INFO: Waiting for application startup.
INFO: Application startup complete.
브라우저에서 표시를 확인. 표시 OK.
문서도 마음대로 할 수 버린다.
꽤 놀랍습니다. 여담입니다만.
FastAPI (python)에서 프리젠터에 등록
시험에 「/test_create」라고 하는 엔드포인트를 작성해, 그 안에서 프리젠터에 데이터를 등록하도록(듯이) 한다.
main.py
import requests
import json
from fastapi import FastAPI
from requests_ntlm import HttpNtlmAuth
app = FastAPI()
@app.get("/")
def read_root():
return {"Hello": "World"}
@app.get("/test_create")
def test_create():
url = 'http://192.168.10.10/pleasanter/api/items/12389/create'
json_str = '''\
{
"ApiVersion": 1.1,
"ApiKey": "ea55625bb586d27df01c281e5ef5464e4bbe6bc86d1451a24fd430351198ce0bbabc467cdd1d0ebdf4045ec22922dfce7a9f47a8241559229a7d5129d2329879",
"ClassHash": {
"ClassA": "氏名2",
"ClassB": "所属3",
"ClassC": "場所4"
},
"DateHash": {
"DateA": "2020/11/08 08:00",
"DateB": "2020/11/08 17:00"
},
"Body": "通常勤務です"
}
'''
json_data = json.loads(json_str)
headers = {'content-type': 'application/json; charset=UTF-8'}
response = requests.post(url, json=json_data, headers=headers,
auth=HttpNtlmAuth('xxx\xxx', 'xxx'))
return (response.text)
↑ 문서를 사용하여 실행하면. . .
성공! !
"{\"Id\":12410,\"StatusCode\":200,\"Message\":\"\\"이름 2\\"을(를) 만들었습니다.\"}"
프리잔터의 화면에서 확인해 OK!
등록할 수 있었으므로, 여기까지로 끝.
Reference
이 문제에 관하여(프리젠터 API 사용 (python/FastAPI)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/donraku/items/5e5a59d2541b0fcec528텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)