我正在尝试在Digital Ocean中创建一个Droplet.API告诉我.create
的响应是一个JSON对象。当我运行此查询时,在我的DigitalOcean帐户中成功创建了一个Droplet,但我只得到None
作为响应。问题是什么?
import digitalocean
droplet = digitalocean.Droplet(token="<<<TOKEN>>>",
name='DanyshOcean',
region='nyc2', # New York 2
image='ubuntu-14-04-x64', # Ubuntu 14.04 x64
size_slug='512mb', # 512MB
backups=True)
jsonobj=droplet.create()
print(jsonobj)
输出:
None
答案 0 :(得分:0)
droplet.create()
将创建Droplet,droplet
本身就是一个具有新Droplet属性的对象。
试着举例:
print(droplet.id)
或
droplet.destroy()
答案 1 :(得分:0)
Digital Ocean REST API与python库(可能在封面下使用API)不同。
如果你看到library docs,就会发现需要使用status
:
actions = droplet.get_actions()
for action in actions:
action.load()
# Once it shows complete, droplet is up and running
print(action.status)
一旦有complete
状态,您的Droplet就会启动。我不知道这是否阻塞并等待你的Droplet完成,所以你可能需要这样做:
import time
running = False
while not running:
print('Waiting 1s for droplet to start up...')
time.sleep(1)
actions = droplet.get_actions()
for action in actions:
action.load()
if action.status == 'complete':
running = True