Skip to content

Commit

Permalink
Merge pull request #8 from maddie/master
Browse files Browse the repository at this point in the history
Rewording the dialogues.
  • Loading branch information
oott123 committed Oct 19, 2013
2 parents 2668c99 + 0eefd20 commit 6771162
Show file tree
Hide file tree
Showing 3 changed files with 382 additions and 378 deletions.
121 changes: 62 additions & 59 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,105 +9,108 @@ Linux (or cygwin) with php & curl installed.

## 使用方法

chmod +x bpcs_uploader.php
chmod +x bpcs_uploader.php
./bpcs_uploader.php

由于VPS上安装的php可能存在于各种地方,因此运行很可能不正常。请以使用`which php`得到你的php绝对路径,修改bpcs_uploader.php的头一句#!后的路径。
如果你的php是为了网站环境安装的,那么很有可能你会得到下面这条错误消息:
由于VPS上安装的php可能存在于各种地方,因此运行很可能不正常。请以使用`which php`得到你的php绝对路径,修改bpcs_uploader.php的头一句#!后的路径。
如果你的php是为了网站环境安装的,那么很有可能你会得到下面这条错误消息:

> xxx() has been disabled for security reasons
> xxx() has been disabled for security reasons
那么说明你的环境由于安全原因禁止了部分函数的执行。请看FAQs的1。请使用那条长长的命令代替./bpcs_uploader.php。eg:`php -d disable_functions -d safe_mode=Off -f bpcs_uploader.php quota`
那么说明你的环境由于安全原因禁止了部分函数的执行。请看FAQs的1。请使用那条长长的命令代替./bpcs_uploader.php。eg:`php -d disable_functions -d safe_mode=Off -f bpcs_uploader.php quota`

### 快速初始化

./bpcs_uploader.php quickinit

敲下命令直接进入快速初始化流程,输入y,然后打开浏览器访问 https://openapi.baidu.com/device ,在“请输入设备上显示的用户授权码:”文本框中输入上面显示的授权码(这里是`12abcxyz`),并点击继续。
看到网页上显示“请返回设备继续操作!”后,返回ssh上按下回车后,即完成了初始化配置。
看到网页上显示“请返回设备继续操作!”后,返回ssh上按下回车后,即完成了初始化配置。

### 初始化

./bpcs_uploader.php init

敲下命令之后会进入初始化流程,这里分段详述设置方法。

> Now start the initiation. If you have configured the uploader , it will be overwirte.
> Uploader initialization will be begin. If you have already configured
> the uploader before, your old settings will be overwritten.
> Continue? [y/N] y
确认初始化。如果之前有初始化过,那么以前的配置将会被覆盖。

> Now you have to enter your baidu PSC app key . You should know that it needs a manual acting.
> You can request for it via http://developer.baidu.com/dev#/create .
> Make sure you have the PCS app key . if you haven't , you can use the demo key by just hit Enter.
> So if you dont have the app secret , you have to re-init every month , for the access-token will expires every month.
> App KEY [uFBSHEwWE6DD94SQx9z77vgG] :
确认初始化。如果之前有初始化过,那么以前的配置将会被覆盖。

第一步,输入App key。这里需要输入一个有PCS权限的API KEY,如果没有的话直接敲回车就好了,这里会默认使用内置的一组app key,app secret和app foloder name,所以只要敲下回车就能直接跳到第四步。如果你没有App secret(例如使用L6g70tBRRIXLsY0Z3HwKqlRE这个Key时),只能获取一个有效期为一个月的access token。如果有一个有PSC权限的API KEY和secret,那么就能获得一个有效期为10年的refresh token,以便长期使用。
> Please enter your PSC App API Key. You can get this key by visiting
> http://developer.baidu.com/dev#/create
> If you already created an app, you can visit http://developer.baidu.com/console#/app and get it in your app's info.
> If you don't want to bother creating an app, you can press Enter to use the demo API Key.
> Doing so (without your own API Key/Secret) will cause the access-token expire every 30 days, and you'll have to
> re-initialize when it expires.
> App API KEY [uFBSHEwWE6DD94SQx9z77vgG] :
> App key has been setted to uFBSHEwWE6DD94SQx9z77vgG .
> Now you have to enter your baidu PSC app secret. If you dont know the secret , keep it blank.
> App SECRET [] :
第一步,输入App key。这里需要输入一个有PCS权限的API KEY,如果没有的话直接敲回车就好了,这里会默认使用内置的一组app key,app secret和app folder name,所以只要敲下回车就能直接跳到第四步。如果你没有App secret(例如使用L6g70tBRRIXLsY0Z3HwKqlRE这个Key时),只能获取一个有效期为一个月的access token。如果有一个有PSC权限的API KEY和secret,那么就能获得一个有效期为10年的refresh token,以便长期使用。

> App API Key has been set to uFBSHEwWE6DD94SQx9z77vgG .
> Please enter your Baidu PSC App API Secret. If you have no idea what it is, keep it blank.
> App API SECRET [] :
第二步,输入App secret。如果输入了app secret,将会转到device code模式验证;或者直接输入回车使用oob模式验证。先直接回车:

> Now you have to enter your app name. You can enter it later in the file [ /root/_bpcs_files_/config/appname ].
> * Why i have to enter app name ? see FAQs.
> If your app name have Chinese characters , please swith your client to the UTF-8 mode.
> Here are some chinese characters . Before you enter chinese characters , make sure you can read these characters.
> 这里是一些中文字符。
> If you cant read any chinese above , please press enter , and change it manually in the file [ /root/_bpcs_files_/config/appname ] .
> If you have Enter the key [L6g70tBRRIXLsY0Z3HwKqlRE] (by default) , just press Enter.
> App Name [pcstest_oauth] :
第三步,这里需要输入app floder name,也就是你申请API时填写的文件夹名字。详情见FAQ 2。因为是使用的默认的key,所以直接回车即可。

> Now you have to get your oauth access_token by your own .
> Here is a reference document .
> http://developer.baidu.com/wiki/index.php?title=docs/pcs/guide/usage_example
>
> A simple guide :
> 1.visit https://openapi.baidu.com/oauth/2.0/authorize?response_type=token&client_id=L6g70tBRRIXLsY0Z3HwKqlRE&redirect_uri=oob&scope=netdisk
> in your broswer.
> 2.when it redirected to a html page , copy the url to the notepad.
> 3.get the access_token from it , paste it and press Enter.
> access_token[] :
第四步,获取access token。在浏览器中打开上述URL( https://openapi.baidu.com/oauth/2.0/authorize?response_type=token&client_id=L6g70tBRRIXLsY0Z3HwKqlRE&redirect_uri=oob&scope=netdisk ),进行授权。
> Please enter your app's folder name. You can choose to input this later in the file [ /root/_bpcs_files_/config/appname ].
> ** Why do I have to enter the app's folder name? Please check the FAQs. **
> If your app's name has Chinese characters, please ensure that your client supports UTF-8 encoding.
> Below are some Chinese characters for testing. Please make sure that you can read them before you enter Chinese here.
> 这里是一些中文字符。
> If you can't read the characters above, please press Enter and change it manually within the file [ /root/_bpcs_files_/config/appname ].
> If you have Enter the key [L6g70tBRRIXLsY0Z3HwKqlRE] (by default) , just press Enter.
> App Name [pcstest_oauth] :
第三步,这里需要输入app folder name,也就是你申请API时填写的文件夹名字。详情见FAQ 2。因为是使用的默认的key,所以直接回车即可。

> In the next step, you'll have to grab the access_token generated by Baidu.
> You can check out this link for more information on this procedure.
> http://developer.baidu.com/wiki/index.php?title=docs/pcs/guide/usage_example
>
> Easy Guide:
> 1. Visit https://openapi.baidu.com/oauth/2.0/authorize?response_type=token&client_id=$appkey&redirect_uri=oob&scope=netdisk
> 2. After the page is being redirected (it should show something like OAuth 2.0), copy the current URL to your favorite text editor.
> 3. Grab the access_token part, take only the part between "access_token=" and the next "&" symbol (without quotes).
> 4. Copy it and paste here, then press Enter.
> access_token[] :
第四步,获取access token。在浏览器中打开上述URL( https://openapi.baidu.com/oauth/2.0/authorize?response_type=token&client_id=L6g70tBRRIXLsY0Z3HwKqlRE&redirect_uri=oob&scope=netdisk ),进行授权。
授权完毕后,将会跳到一个写着“百度 Oauth2.0”的页面。复制出其中的网页URL,找到access_token=和&之间的字符串,例如:
`3.**05c2ea85d52c2***************a5.2592000.136***9032.3089166538-23**47`
将其复制到shell中粘贴并回车。使用这种方式初始化的用户,需要每月重新初始化。
`3.**05c2ea85d52c2***************a5.2592000.136***9032.3089166538-23**47`
将其复制到shell中粘贴并回车。使用这种方式初始化的用户,需要每月重新初始化。

如果第三步输入app secret的时候没有留空,将会得到下面的消息:

> Now open your broswer and visit https://openapi.baidu.com/device .
> Copy or input 12abcxyz when it been asks.
> After granted the access to the application , be back and press Enter key .
> Launch your favorite web browser and visit https://openapi.baidu.com/device
> Input 12abcxyz as the user code if asked.
> After granting access to the application, come back here and press Enter to continue.
来到这里,打开浏览器访问 https://openapi.baidu.com/device ,在“请输入设备上显示的用户授权码:”文本框中输入上面显示的授权码(这里是`12abcxyz`),并点击继续。
看到网页上显示“请返回设备继续操作!”后,返回ssh上按下回车后,即可继续。
看到网页上显示“请返回设备继续操作!”后,返回ssh上按下回车后,即可继续。

> curl -X GET -k -L "...."
> % Total % Received % Xferd Average Speed Time Time Time Current
> Dload Upload Total Spent Left Speed
> 0 62 0 62 0 0 40 0 --:--:-- 0:00:01 --:--:-- 235
> Success . Your Storage Status : 0.06G/115.00G (0.05%)
> Have fun !
> curl -X GET -k -L "...."
> % Total % Received % Xferd Average Speed Time Time Time Current
> Dload Upload Total Spent Left Speed
> 0 62 0 62 0 0 40 0 --:--:-- 0:00:01 --:--:-- 235
> Access Granted. Your Storage Status: 0.06G/115.00G (0.05%)
> Enjoy!
你所看到的输出可能和这里给出的不一样,但是只要看到了存储空间的剩余量,和【Have fun !】提示,即说明成功初始化。

### 查询容量(配额)

./bpcs_uploader.php quota
./bpcs_uploader.php quota

结果:
结果:
> Your Storage Status : 0.06G/115.00G (0.05%)
### 上传文件

./bpcs_uploader.php upload [path_local] [path_remote]

路径格式:`foo/bar/file.ext`(路径中一定要包括文件名)
路径格式:`foo/bar/file.ext`(路径中一定要包括文件名)
上传后,能在百度网盘/我的应用数据/应用名/foo/bar下找到一个叫file.ext的文件。

### 下载文件
Expand All @@ -126,10 +129,10 @@ Linux (or cygwin) with php & curl installed.

## FAQs

1. 各种错误提示
1. 各种错误提示

试试`php -d disable_functions -d safe_mode=Off -f bpcs_uploader.php`
试试`php -d disable_functions -d safe_mode=Off -f bpcs_uploader.php`

2. 为什么要输入文件夹名?
2. 为什么要输入文件夹名?

因为百度PCS的权限被限制在了/apps/文件夹名/下。如果发现输入文件夹名后仍然无法上传文件,请通过网页版找到【我的应用数据】找到对应的文件夹名,写入/config/appname文件。上传文件的时候会自动帮您处理文件夹,无需手动写出完整路径。
Loading

0 comments on commit 6771162

Please sign in to comment.