2016-09-01 14 views
0

に渡すクエリ引数私はこのように、要求を取得し、私のREST APIにパラメータを渡すしようとしています:request.getパイソンのURLパスの代わりに、

parameters = {'key':value}

response = requests.get('some url', params= parameters)

が、API私が使用しているのは、クエリ引数の代わりにurl-pathを使います。私はそれが好きたい:

/api/resource/parametervalue

をし、それは次のように出てくる:私は何とかして必要なものresponse.get変更することができれば、私はすべてWeb上で検索した

/api/resource?parameter=value

を検索しますしかし、私はそれを見つけるように見えることはできません。私は何をすべきか?

ありがとうございました!

答えて

0

あなたはこのように試すことができます: 必要なソースコードhereで定義されているparamsオプションの引数は、クエリ文字列の前に?を付加するURL/API /リソース/ parametervalue

response = requests.get('some url'+'/'parameters)//url/api/resource/parametervalue it's a url 
response = requests.get('some url',params)//url/api/resource?params it't a url with params 
+0

いくつか説明を加えてください。 –

0

です。

あなたがそうurlrequests.get

>>> parameters = ('param', 'value') 
>>> base_url = 'http://host/api/resource' 
>>> query = ''.join((parameters[0], parameters[1])) 
>>> url = '/'.join((base_url, query)) 

を呼び出す前には、URLを変更する方がいいでしょうは次のようになります。

>>> url 
'http://host/api/resource/paramvalue' 
>>> response = requests.get(url) 

あなたは異なる時間にあなたを使用するのと同じホストで異なるパスを持っている場合base_urlhostpathに分解し、次にhost,pathおよびqueryに参加することができます。 joinメソッドは反復可能な引数を1つだけ取ることを忘れないでください。

関連する問題