AttributeError: у объекта 'str' нет атрибута 'код_состояния' - PullRequest
0 голосов
/ 03 декабря 2018

Я получаю следующую ошибку

AttributeError: 'str' object has no attribute 'status_code'

Я получаю данные через API, и когда API не работает, значение «down»

@app.route('/test_api')
def test_api():
    ipno = "192.168.0.120"
    port = "8060"

    url_time = 'https://{}:{}/time/'.format(ipno, port)
    url_member = 'https://{}:{}/member/'.format(ipno, port)
    url_state = 'https://{}:{}/state/'.format(ipno, port)

    if url_time.status_code == requests.codes.ok:

        r_time = _session.get(url_time).content
    else:
        r_time = "Time is down"

    if url_member.status_code == requests.codes.ok:

        r_member = _session.get(url_member).content
    else:
        r_member = "Member is down"

    if url_state.status_code == requests.codes.ok:

        r_state = _session.get(url_state).content
    else:
        r_state = "State is down"


    return render_template('test_api.html', time = json.loads(r_time), member=json.loads(r_member), state=json.loads(r_state))

Ответы [ 2 ]

0 голосов
/ 03 декабря 2018

Вы не делаете фактический запрос, используя библиотеку запросов:

url_time = 'https://{}:{}/time/'.format(ipno, port)
time_request = requests.get(url_time)
if time_request.status_code == requests.codes.ok:
    r_time = _session.get(url_time).content
0 голосов
/ 03 декабря 2018

В строке if url_time.status_code == requests.codes.ok::

url_time - строка, поэтому вы получаете сообщение об ошибке.Строки не имеют атрибута status_code.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...