J'essaie de POSTER un fichier dans la section "Téléchargements" d'un référentiel Bitbucket. Je suis la page this de la documentation de Bitbucket. J'essaye de faire ceci en écrivant un manuscrit de Powershell. J'ai réussi à obtenir la méthode GET pour travailler avec:Impossible d'utiliser POST pour fonctionner avec Powershell et Bitbucket
#Invoke-RestMethod -Credential $cred -Uri https://api.bitbucket.org/2.0/repositories/myBitbucketUsername/myBitbucketRepoName/downloads?access_token=9EtOz9JDeWGwxTLKx3ya2oPE8g652GoLN0cMmtD0Ncvkf2OXoio0bcXwSigNE9AXTT2aj6qmbS5XHae7rIc%3D"&"scopes=pipeline%3Avariable+webhook+snippet%3Awrite+wiki+issue%3Awrite+pullrequest%3Awrite+repository%3Adelete+repository%3Aadmin+project%3Awrite+team%3Awrite+account%3Awrite"&"expires_in=3600 -OutFile .\file.txt
Afin d'obtenir que nous au travail que je devais ajouter le jeton d'accès que je fis par Bitbucket (donc tout le texte pour l'accès partie jeton de l'Uri).
Je ne suis pas sûr comment effectuer le POST. J'ai essayé plusieurs choses, y compris quelque chose de similaire à la documentation:
curl -s -u myBitbucketUsername -X POST https://api.bitbucket.org/2.0/repositories/myBitbucketUsername/myBitbucketRepoName/downloads -F [email protected]
L'erreur que je reçois à l'intérieur Powershell lors de l'exécution de cette commande:
Invoke-WebRequest : Parameter cannot be processed because the parameter name 'u' is ambiguous. Possible matches include:
-UseBasicParsing -Uri -UseDefaultCredentials -UserAgent.
At C:\Users\user\Desktop\ScriptTest.ps1:21 char:9
+ curl -s -u myBitbucketUsername-X POST https://api.bitbucket.org/2.0/reposit ...
+ ~~
+ CategoryInfo : InvalidArgument: (:) [Invoke-WebRequest], ParameterBindingException
+ FullyQualifiedErrorId : AmbiguousParameter,Microsoft.PowerShell.Commands.InvokeWebRequestCommand
J'ai aussi essayé avec le jeton d'accès ajouté à l'URL (similaire à la façon dont j'ai fait le GET).
Le fichier que j'essaye de POST est 'Hello.txt' qui se trouve sur mon bureau - au même endroit que mon script Powershell.
Des idées?
EDIT: Je ai suivi les conseils de briantist et d'utiliser les informations d'identification changé à la place. Maintenant, j'obtiens une erreur 'Bad Request (400)
'. Voici mon code:
$postParams = @{files='.\Hello.txt'}
Invoke-WebRequest -Credential $cred -Uri https://api.bitbucket.org/2.0/repositories/myBitbucketUsername/myRepoName/downloads -ContentType "multipart/form-data" -Method POST -Body $postParams
'pelotonner -s -u myBitbucketUsername-X POST' Connaissez-vous là-bas devrait être un espace entre 'myBitbucketUsername' et' -X'? – Milk
@Milk oups - c'est une faute de frappe de copier dans la poste. J'ai mis à jour le post. – Roka545