def __dataRequest(self, page, client_id, client_secret, date_from, date_to, polygon):
        if not self.isAuthorized():
            self.authRequest(client_id, client_secret, page, date_from, date_to, polygon)
            return

        print("page=", page)
        # print("accessTokenExpires=", self.__accessTokenExpires.toString(Qt.ISODate))

        date_format = "yyyy-MM-ddThh:mm"
        url = QUrl(THERMAL_ANOMALY_URL)
        url_query = QUrlQuery()
        if polygon is not None:
            url_query.addQueryItem("polygon", polygon)
        if date_from is not None:
            url_query.addQueryItem("shooting", "ge" + date_from.toString(date_format))
        if date_to is not None:
            url_query.addQueryItem("shooting", "le" + date_to.toString(date_format))
        # _take=1000&_skip=0&_lastUpdated=ge2020-04-08T00%3A00%3A00
        url_query.addQueryItem("_take", str(TAKE))
        url_query.addQueryItem("_skip", str(page * TAKE).zfill(1))
        # url.setQuery(url_query)

        print(url_query.queryItems())

        request = QtNetwork.QNetworkRequest()
        request.setRawHeader(b'Authorization', ('Bearer ' + self.__accessToken).encode())
        request.setHeader(QNetworkRequest.ContentTypeHeader, "application/json".encode())
        request.setUrl(url)
        # print("request: ", url)

        self.dataReply = self.__manager.post(request, url_query.toString(QUrl.FullyEncoded).encode())
        self.dataReply.finished.connect(lambda dr=self.dataReply: self.__data_request_finished(dr, client_id, client_secret, date_from, date_to, polygon))
Пример #2
0
    def handle_form_submitted(self, qurl, elements=dict()):

        #       print("\n\ngot url: ", qurl)
        qqurl = QUrlQuery(qurl)
        for key, value in qqurl.queryItems():
            elements[key] = value

        self.render(qurl.path(), elements)
Пример #3
0
    def handle_form_submitted(self, qurl, elements=dict()):

        #       print("\n\ngot url: ", qurl)
        qqurl = QUrlQuery(qurl)
        for key, value in qqurl.queryItems():
            elements[key] = value

        self.render(qurl.path(), elements)
Пример #4
0
    def link_clicked(self, qurl):
        # print("link_clicked ->: ", qurl)
        qqurl = QUrlQuery(qurl)
        elements = {}
        # print("got link_clicked url: ", qurl)
        for key, value in qqurl.queryItems():
            elements[key] = value

        self.render(qurl.path(), elements)
Пример #5
0
    def link_clicked(self, qurl):
        # print("link_clicked ->: ", qurl)
        qqurl = QUrlQuery(qurl)
        elements = {}
        # print("got link_clicked url: ", qurl)
        for key, value in qqurl.queryItems():
            elements[key] = value

        self.render(qurl.path(), elements)
Пример #6
0
 def parse_url(self, url):
     self.url = QUrl(url)
     self.host = self.url.host()
     self.port = self.url.port(443 if self.url.scheme() == 'https' else 80)
     self.path = self.url.path(QUrl.FullyEncoded)
     if self.url.hasQuery():
         query = QUrlQuery(self.url.query())
         self.queryargs = dict(query.queryItems())
     else:
         self.queryargs = None
Пример #7
0
    def wrapper(SELF, request):
        # Looking for Pid in query string, try matching with locally bound peerid
        localPeerId = app.xwaredpy.peerId
        if not localPeerId:
            return request

        urlQuery = QUrlQuery(request.url())
        queryItems = dict(urlQuery.queryItems())
        if queryItems.get("pid", None) != localPeerId:
            return request
        return func(SELF, request)
Пример #8
0
    def _preprocess_request_bind(request):
        # set boxName when binding the device to hostname

        urlQuery = QUrlQuery(request.url())
        queryItems = urlQuery.queryItems()

        for i, item in enumerate(queryItems):
            if item[0] == "boxName":
                queryItems[i] = ("boxName", os.uname().nodename)
        urlQuery.setQueryItems(queryItems)

        # write changes back to request
        qurl = request.url()
        qurl.setQuery(urlQuery)
        request.setUrl(qurl)

        return request
Пример #9
0
def sendPostData(url, data):
    """
    Function generating a script to send Post data.
    
    @param url URL to send the data to
    @type QUrl
    @param data data to be sent
    @type QByteArray
    @return script to send Post data
    @rtype str
    """
    source = """
(function() {{
    var form = document.createElement('form');
    form.setAttribute('method', 'POST');
    form.setAttribute('action', '{0}');
    var val;
    {1}
    form.submit();
}})()"""

    valueSource = """
val = document.createElement('input');
val.setAttribute('type', 'hidden');
val.setAttribute('name', '{0}');
val.setAttribute('value', '{1}');
form.appendChild(val);"""

    values = ""
    query = QUrlQuery(data)
    for name, value in query.queryItems(QUrl.FullyDecoded):
        value = value.replace("'", "\\'")
        name = name.replace("'", "\\'")
        values += valueSource.format(name, value)

    return source.format(url.toString(), values)