如何查询 PowerDown Route
cn·@oflyhigh·
0.000 HBD如何查询 PowerDown Route
在之前的文章中:
* [你或许不知道的STEEMIT(STEEM)一些隐藏功能](https://steemit.com/cn/@oflyhigh/steemit-steem)
我提及了一个大家或许不知道的功能***PowerDown Route***,通过这一功能,你可以把一个账户里的SP提现到另外一个账户,也可以选择提现的时候PowerUp到另外一个账户。

当时为了理解这个事,特意拿个测试账户测试了一下,***设置测试号A的PowerDown Route为B***, 然后我今天突然想看一下我设置的***B***是哪个账户,结果尴尬了,在steemd.com 找不到。
steemd.com上只有这个信息: 
如果你从未设置过,那么应该是: 
好吧,我知道我设置过,但是我设置哪里去了呢?
# API get_withdraw_routes
研究半天发现有一个API
`vector< withdraw_route > get_withdraw_routes( string account, withdraw_route_type type = outgoing )const;`
相关结构体和类型定义:
```
struct withdraw_route
{
string from_account;
string to_account;
uint16_t percent;
bool auto_vest;
};
enum withdraw_route_type
{
incoming,
outgoing,
all
};
```
# curl 测试
有了上述API定义,我们就可以使用curl进行调用了
#### 查询account_a的PowerDown Routes
`curl --data '{"jsonrpc": "2.0", "method": "get_withdraw_routes", "params": ["account_a", 1], "id": 1}' https://steemd.steemit.com`
得出如下结果:
`{"id":1,"result":[{"from_account":"account_a","to_account":"account_b","percent":10000,"auto_vest":false}]}`
#### 查询将account_a设置为PowerDown Route的账户列表
`curl --data '{"jsonrpc": "2.0", "method": "get_withdraw_routes", "params": ["account_a", 0], "id": 1}'
https://steemd.steemit.com`
查询结果为空:
`{"id":1,"result":[]}`
# steem python 库
直接使用API可以查询账户的PowerDown Route(Incoming, outgoing)
当然也可以自行对API就行封装
庆幸的是, steem python 库已经帮我们做好了封装
#### get_withdraw_routes
```
def get_withdraw_routes(self, account: str, withdraw_route_type: str):
""" get_withdraw_routes """
return self.exec('get_withdraw_routes', account, withdraw_route_type, api='database_api')
```
#### 简单的测试代码
```
from steem import Steem
from pprint import pprint
steem = Steem()
routes = steem.get_withdraw_routes('account_a', 'all')
pprint(routes)
```
#### 结果
```
[{'auto_vest': False,
'from_account': 'account_a',
'percent': 10000,
'to_account': 'account_b'}]
```
# 设置& 取消PowerDown Route
#### 设置
可以使用steem python 库提供的API设置PowerDown Route
`set_withdraw_vesting_route`
详情见代码内注释即可
可以设置N个Routes,并对其分配不同比例,***总量不超过100%***
#### 取消
如果想取消对account_a设置的PowerDown Route
只需将account_a的PowerDown Route 设置为account_b,并将percent设置为0 即可
----
说明: 文中 account_a, account_b 仅为说明问题,非实际账户。👍 oflyhigh, eval, didideras, novale, bxt, arama, andy2007, auntigormint, leobliss, mrpointp, writemore, jejangkit, exec, lingfei, helene, wylo, laoyao, minimalpris, chinadaily, nextgen622, wongshiying, blackbunny, deanliu, xiaohui, joythewanderer, abhishek587, xiaokongcom, janiceting, nickwalshblog, yyyy, devilwsy, lalala, anubisthegaylord, ethansteem, htliao, katythompson, somebody, midnightoil, cryptohustler, cornerstone, steemtruth, stevepaul, livingfree, aomura, dgarsan, sanzo, sebastianjackson, aismor, travelgirl, silentlucidity53, gordonovich, freedom-fighter, ribalinux, ldauch, hammadakhtar, abetterworld, crypsis, sweethoney, revelim, feelapi, maeksimcoffee, leomichael, playbook, fundurian, yinlovesu0914, stenyin, profitgenerator, emcvay, kingofdew, chiming, marcuswilliams, redtea, lklaam21, nagavolu, davidzack, trafalgar, steemhoops99, sweetsssj, jademont, dragon40, oenophile, mandagoi, cryptoninja, stackin, trevis, exprmnt, ebejammin, sandra, jkkim, jason, shenchensucc, bitcalm, asterix87, resteeming, stacee, idx, benderisgreat, chessmasterhex, abit, lordp, coinbitgold, davaowhenyo, rea, allenshayzar, steemitlietuva, kitcat, hermajesty, newarguy, btsabc, ravenousappetite, elconserje, happychau123, amat, black-eye, christ2169, magicmonk, freshstuff, colmanlamkh, shirlam, ahmedkedd, judasp, musfendi, bestmz, indepthstory, mohamadshwa5, tvb, alfa2141, c86l, neloy11, tuvalamrani, littlerph, candiceji, rogerblu, benchen216, herlife, mrrifat1, ace108, geek4geek, ajay08, sem89, hannahwu, shiv14prakash, taoufik, geoffrey, ratnaasik, laodr, thomasp, duekie, tensaix2j, elevator09, amuroturah, marylaw, cryptousage, rosicreative, mnkassier, zalb, lemooljiang, nigulax, lydiachan, kcm1105, linux911, nataliia, applesspatrick, kingscrown, ihashfury, skysunny, aaronaugustine, harrywill, linuslee0216, jessicameng, fatamorgan, eternalsunshine, boshler, kunrishartanto, dhabal, kyawwunnhtunn, wilkinshui, the.great.mun, faheemahmad, muhammadfaisal, namct, arvindsingh, fr3eze, awkwardawk, steppingout23, belleontherocks, geeekgirl, yuxi, olderthandirt, dat81, zhother, saadmmirza, justyy, kenchung, zuski, eslamelnagar, evgenya86, sharif99, jmehta, teodorescu, hanshotfirst, shasol, nehachauhan, munzil, kihase, free999enigma, arjun9, guyverckw, daniel007, englishtchrivy, pharesim, daily-post, jgt2803, dmcdominic, writer1, alihelal, timknip, carbunco10, samhenry, etcbits, jodywrites, liflorence, nationalpark, surftrader, fadhilarnas, susanlo, rivalhw, dillibabu, bledarus, solidace, joedirt, lsc9999, kevbot, leogor1234, carl760, josephmonsen, steemav, joyochung, ejemai, cqf, setherson, supersnooper221, siniceku, fakire1sadaka, ceknassteem, astarte89, techstudio18, impressions, devilcat, slowwalker, warofcraft, samuelpaddy, runridefly, simontycy, mousum, jesusnav96, shashankgupta, clodoweg, majidawan, zlacee, nita77, luneknight, shahriar27, jerrybanfield, besteulz, contenidos, quicksnake, python-think,