我的问题是CloudFlare
在 中打开网站CLI
。
我的意思并不是说存在挑战并且我不想解决挑战。
以此网站为例: https: //pegaxy.io
在新安装的任何网络浏览器上首次打开时。它打开没有任何问题。代码200
已收到。
但是当我点击并在终端中Copy as cURL
出现错误时。403
卷曲代码:
curl 'https://pegaxy.io/' \
-H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; rv:91.0) Gecko/20100101 Firefox/91.0' \
-H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' \
-H 'Accept-Language: en-US,en;q=0.5' \
-H 'Connection: keep-alive' \
-H 'Upgrade-Insecure-Requests: 1' \
-H 'Sec-Fetch-Dest: document' \
-H 'Sec-Fetch-Mode: navigate' \
-H 'Sec-Fetch-Site: none' \
-H 'Sec-Fetch-User: ?1' \
-H 'Pragma: no-cache' \
-H 'Cache-Control: no-cache' \
--compressed --verbose
Run Code Online (Sandbox Code Playgroud)
日志:
$ curl 'https://pegaxy.io/' \ …
Run Code Online (Sandbox Code Playgroud) 我.m3u8
在远程主机上有一个文件,其中包含固定数量的块.ts
文件名,而不是流:
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:11
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:9.736,
media_0.ts
#EXTINF:9.96,
media_1.ts
#EXTINF:10.0,
media_2.ts
#EXTINF:10.0,
media_3.ts
#EXTINF:10.0,
media_4.ts
#EXTINF:10.2,
media_5.ts
#EXTINF:10.0,
Run Code Online (Sandbox Code Playgroud)
当我使用此命令时:
# ffmpeg -i "http://example.com/chunklist.m3u8" file.mp4
frame= 582 fps=9.4 q=28.0 size= 1536kB time=00:00:23.21 bitrate= 542.1kbits/s dup=2 drop=4 speed=0.375x
Run Code Online (Sandbox Code Playgroud)
有用。但是它获得逐帧视频,并且需要很长时间。(几乎要花费一些时间来播放视频。)
但是由于所有.ts
文件的路径都是已知的。(http://example.com/media_0.ts,http : //example.com/media_1.ts,...)必须有一种同时获取和合并它们的方法。
但是如何ffmpeg
直接进入?
对于一种解决方案,我知道如何使用ffmpeg连接文件。
ffmpeg -i "concat:0.ts|1.ts|2.ts|3.ts|4.ts|5.ts" -c copy output.mp4
Run Code Online (Sandbox Code Playgroud)
这个ffmpeg命令很棒,并且可以在不到1秒的时间内运行!
因此,请尝试.ts
使用以下命令下载带有CURL的所有文件:
curl \
http://example.com/media_0.ts -o 0.ts \
http://example.com/media_1.ts -o 1.ts \
http://example.com/media_2.ts -o 2.ts \
http://example.com/media_3.ts -o 3.ts …
Run Code Online (Sandbox Code Playgroud) 提供此链接.
我知道操作数与字符串类型转换为数字,然后通常的数学
但请参阅以下示例代码:
echo intval(1e1); // 10
var_dump("1e1" == 10); // true, and it's ok
echo intval(0x1A); // 26
var_dump("0x1A" == 26); // true, and it's ok
echo intval(042); // 34
var_dump("042" == 34); // fasle, Why ?!!!
Run Code Online (Sandbox Code Playgroud)
为什么上一个代码返回false.
我使用此代码在以下位置设置 cookie Yii2
:
$cookies = Yii::$app->response->cookies;
$cookies->add(new \yii\web\Cookie([
'name' => 'googtrans',
'value' => '//fa',
'expire' => time()+(60*60*24*365),
]));
Run Code Online (Sandbox Code Playgroud)
当我在浏览器中检查 cookie 管理器时,我看到:
378abb4ba4b3ed4bd5fa0918a34e0ba6c4042aecd590d167d76f6a901660d082a%3A2%3A%7Bi%3A0%3Bs%3A9%3A%22googtrans%22%3Bi%3A1%3Bs%3A4%3A%22%2F%2Ffa%22%3B%7D
Run Code Online (Sandbox Code Playgroud)
解码后我看到:
378abb4ba4b3ed4bd5fa0918a34e0ba6c4042aecd590d167d76f6a901660d082a:2:{i:0;s:9:"googtrans";i:1;s:4:"//fa";}
Run Code Online (Sandbox Code Playgroud)
似乎,Yii2
将 cookie 数据JSON
自动转换为格式。
但我不需要这个,我想要一个简单的 cookie 值,带有googtrans
名称和//fa
值。
(我知道$_COOKIE
在 PHP 核心,但我想使用 Yii)
我该怎么做?
借口:
我看到这个:Escape @ character in git proxy password
但它是关于http.proxy
param 的,p%4055
对我来说关于url
param不起作用。
我的问题:
我使用 git 版本 1.7.1
我的密码存储库是:p@55
我使用gitlab
服务器和centos
客户端。
在.git/config
文件中,我是这样的:
[remote "origin"]
url = http://user:p@55@domain.com:port/repo.git
Run Code Online (Sandbox Code Playgroud)
但是当我拉它时,给了我这个错误:
error: Couldn't resolve host '55:domain.com' while accessing ...
Run Code Online (Sandbox Code Playgroud)
我知道转义@
字符,但是:
我尝试p\@55
,给了我这个错误:
fatal: bad config file line 8 in .git/config
Run Code Online (Sandbox Code Playgroud)
我尝试p%4055
,给了我这个错误:
error: The requested URL returned error: 401 while accessing ...
Run Code Online (Sandbox Code Playgroud) 我为同步两个数组写了一个代码,知道哪个是必须删除的,哪个是添加到新数组.
<?php
$currentArray = array('ali', 'hasan', 'husein'); //base array read from database
$saveArray = array('husein', 'Hasan', 'taghi'); //requested item for save/delete in database
$deleteArray = array();
$addArray = array();
$currentArray = array_map('strtolower', $currentArray);
$saveArray = array_map('strtolower', $saveArray);
foreach ($currentArray as $a) {
if (!in_array($a, $saveArray))
$deleteArray[] = $a;
}
foreach ($saveArray as $a) {
if (!in_array($a, $currentArray))
$addArray[] = $a;
}
echo 'must be deleted:';
var_dump($deleteArray);
echo 'must be added:';
var_dump($addArray);
?>
Run Code Online (Sandbox Code Playgroud)
输出:
must be deleted:
array
0 => string …
Run Code Online (Sandbox Code Playgroud) 我有三张A,B,C表.
我怎样才能将B加入A并同时加入B和C?
例如,如果我有这些表:订单,产品,用户,我想要像这样的查询:
SELECT Product.title, User.username, Order.id
FROM Order
/* relations: */
Order LEFT JOIN Product
Product RIGHT JOIN User
/* with this condition: */
ON Order.ProductID = Product.ID
ON Product.UserID = User.ID
Run Code Online (Sandbox Code Playgroud)