Google Muhafazası - POST - Yaratma Güvenlik Politikası Trouble

0 Cevap php

Ben kova bir belge yüklemek için bir kullanıcıya izin vermek için Google Depolama POST nesnesini kullanarak için aşağıdaki formu oluşturma. Ben formu göndermek zaman aşağıdaki hatayı alıyorum. Benim politika yanlış oluşturma eminim, ama ben doğru bir şekilde yapmak için nasıl emin değilim, ben çeşitli yollar denedim. Google's documentation explains the policy here. Yardımlarınız için teşekkür ederiz!

    <Error> 

<Code>InvalidPolicyDocument</Code> − <Message> The content of the form does not meet the conditions specified in the policy document. </Message> 
− <Details> Invalid value for conditions: {"acl":"private","failure_action_redirect":"http:\/\/www.example.com\/failure_instructions.html"} </Details> 
</Error>


class Policy {
    public $expiration = "2010-12-31T11:11:11Z";
    public $conditions = array("acl" => "private",
                        "failure_action_redirect" => "http://www.example.com/failure_instructions.html");
}
$policy = new Policy();
$policy = json_encode($policy);

$policy_utf = utf8_encode($policy);
$policy_base64 = base64_encode($policy_utf);
$policy_sig = base64_encode(hash_hmac('sha1', $policy_base64, $secret, TRUE));
?>

<form action="http://<example_bucket>.commondatastorage.googleapis.com" method="post" enctype="multipart/form-data">
            <input type="hidden" name="key" value="test_documenttttt">
            <input type="hidden" name="GoogleAccessId" value="<?php echo $key; ?>">
            <input type="hidden" name="policy" value="<?php echo $policy_base64; ?>">
            <input type="hidden" name="signature" value="<?php echo $policy_sig; ?>">
            <input type="file" name="file">
            <input type="submit" value="Upload!">
</form>

0 Cevap