Пример #1
0
def get_request():
    # copy of headers
    headers = Headers(request.headers)
    # remove unwanted extra headers
    for h in REMOVE_HEADERS:
        if headers.has_key(h):
            headers.pop(h)
    json_headers = json.dumps(OrderedDict(headers))
    # create file if not exists
    if not os.path.isfile(os.path.abspath(HTTP_HEADERS_FILENAME)):
        with open(os.path.abspath(HTTP_HEADERS_FILENAME), "w+"):
            pass

    # read file
    with open(os.path.abspath(HTTP_HEADERS_FILENAME), "r") as f:
        headers_data = f.readlines()
    # append new headers
    headers_data.append(json_headers + ",\n")
    # deduplicate
    headers_data_to_write = dedup(headers_data)

    # write output data
    with open(os.path.abspath(HTTP_HEADERS_FILENAME), "w") as f:
        for h in headers_data_to_write:
            f.write(h)

    return json_headers
Пример #2
0
    def set_adsws_uid_header(valid, oauth):
        """
        If the user is authenticated, inject the header "X-adsws-uid" into
        the incoming request header
        """
        h = Headers(request.headers.items())

        if current_user.is_authenticated():
            h.add_header("X-Adsws-Uid", current_user.id)
        elif h.has_key("X-Adsws-Uid"):
            h.remove("X-Adsws-Uid")  # being paranoid

        if valid:
            level = oauth.client.ratelimit
            if level is None:
                level = 1.0
            h.add_header("X-Adsws-Ratelimit-Level", level)
        else:
            h.add_header("X-Adsws-Ratelimit-Level", 0.0)

        request.headers = h
        return valid, oauth