Пример #1
0
    def test_encoding(self):
        exception = appier.AppierException(message = "Olá Mundo")
        self.assertEqual(str(exception), "Olá Mundo")

        message_u = appier.legacy.u("Olá Mundo")
        exception = appier.AppierException(message = message_u)
        self.assertEqual(str(exception), "Olá Mundo")
        self.assertEqual(appier.legacy.UNICODE(exception), appier.legacy.u("Olá Mundo"))
Пример #2
0
def csfr_ensure(self, token, scope=None):
    csfr_m = self.session.get("csfr", {})
    tokens, _tokens_l = csfr_m.get(scope, ({}, []))
    result = tokens.pop(token, None)
    if result: return token
    raise appier.AppierException(message="Invalid CSFR protect token",
                                 code=403)
Пример #3
0
def recaptcha_ensure(self, token, action="default", force=False):
    if not _recaptcha_available() and not force: return
    secret = appier.conf("RECAPTCHA_SECRET", None)
    min_score = appier.conf("RECAPTCHA_MIN", 0.5)
    result = appier.post("https://www.google.com/recaptcha/api/siteverify",
                         params=dict(secret=secret, response=token))
    if result.get("score", 0) >= min_score and\
        result.get("action", None) == action:
        return token
    raise appier.AppierException(message="Invalid reCAPTCHA score or action",
                                 code=403)