Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/267.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用JavaScript编码Base64,用GET发送,用PHP解码_Javascript_Php_Encoding_Get_Base64 - Fatal编程技术网

用JavaScript编码Base64,用GET发送,用PHP解码

用JavaScript编码Base64,用GET发送,用PHP解码,javascript,php,encoding,get,base64,Javascript,Php,Encoding,Get,Base64,我认为这将是一个简单的谷歌搜索,但似乎我的技术并不像我想的那样普遍 如何在JavaScript中对Base64字符串进行编码,以便使用GET参数将其安全地放在行中(我的Base64字符串包含大量/,+和=,并且在PHP中对完全相同的字符串进行解码,以便将其存储在数据库中 当我在没有编码的情况下发布Base64字符串时,我的PHP脚本不接受它 我使用JavaScript对Base64字符串进行编码和解码,但对我来说没有意义。因此在JavaScript中(使用编码URI更新): 然后,您应该能够将

我认为这将是一个简单的谷歌搜索,但似乎我的技术并不像我想的那样普遍

如何在JavaScript中对
Base64
字符串进行编码,以便使用
GET
参数将其安全地放在行中(我的
Base64
字符串包含大量
/
+
=
,并且
在PHP中对完全相同的字符串进行解码,以便将其存储在数据库中

当我在没有编码的情况下发布Base64字符串时,我的PHP脚本不接受它

我使用JavaScript对
Base64
字符串进行编码和解码,但对我来说没有意义。

因此在JavaScript中(使用编码URI更新):

然后,您应该能够将base64编码的字符串添加到get请求中

然后在PHP中,检索请求后:

<?php
   $str = 'VGhpcyBpcyBhbiBlbmNvZGVkIHN0cmluZw==';
   echo base64_decode(urldecode($str));
?>

在Javascript中

var password ="xyz"
window.btoa(password)
在php中

$password = urldecode(base64_decode($_POST['password']));

您所说的“
encode
a
Base64
string”是什么意思?将字符串转换为
Base64
表示形式?您是否可以包括您在问题中尝试过的
javascript
php
?不,我的意思是,如何使其“URL安全”,因为它包含一些
/
+
=
@JohnBrunner查看我的答案,如果您需要更详细的示例,请告诉我。为什么您不能使用
POST
请求?如何生成
base64
字符串?
nodejs
不会出现在问题的标记处?谢谢您的回答,但我想问一下我把问题搞错了。我已经得到了一个Base64字符串,我想通过GET将它发送到我的服务器。问题是Base64字符串包含大量的/和+,这对GET不安全。我如何通过GET安全发送它?@JohnBrunner要通过GET请求安全发送它,您必须在客户端对它进行URL编码。请参阅我更新的答案(javascript)关于如何做到这一点。干杯。@JohnBrunner是我的答案,你在寻找什么?为了清楚起见,它应该在php中颠倒:
echo base64_decode(urldecode($str));
$password = urldecode(base64_decode($_POST['password']));