Para utilizar via requisição http deve-se utilizar alguma biblioteca nativa ou de terceiros que permita a realização de requisições HTTP/HTTPS.
Abaixo temos exemplos em algumas linguagens. Para gerar o authorization da requisição basta utilizar o login e senha do seu cliente no formato: login:senha e passar isso por um Encode 64!
Postman
Após abrir o aplicativo, para importar uma coleção de requisições, basta clicar no botão "Import", no canto esquerdo da barra superior, selecionar a opção "Import From Link", colar o endereço abaixo e clicar novamente no botão "Import".
Endereço da coleção de requisições:
https://www.getpostman.com/collections/03a72a9f926b7936f949
É necessário que o xml esteja autorizado e que seja validado corretamente no Validador da Sefaz!
A Tecnospeed agora conta com um repositório oficial no GitHub, lá sempre disponibilizaremos versões mais recentes de nossas demonstrações de produtos. Clique aqui para acessar.
Exemplos
PHP
<?php
$request = new HttpRequest();
$request->setUrl('https://app.plugstorage.com.br/api/invoices');
$request->setMethod(HTTP_METH_POST);
$request->setQueryData(array(
'token' => 'Token'
));
$request->setHeaders(array(
'cache-control' => 'no-cache',
'Authorization' => 'Basic dml0b3IuYmVhbEB0ZWNub3NwZWgjLmNvbS5icjoxMjNtdWRhcg==',
'content-type' => 'multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW'
));
$request->setBody('------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="xml"
XML
------WebKitFormBoundary7MA4YWxkTrZu0gW--');
try {
$response = $request->send();
echo $response->getBody();
} catch (HttpException $ex) {
echo $ex;
}
Node JS
var request = require("request");
var options = { method: 'POST',
url: 'https://app.plugstorage.com.br/api/invoices',
qs: { token: 'Token' },
headers:
{'cache-control': 'no-cache',
Authorization: 'Basic dml0b3IuYmVhbEB0ZWNub3NwZWgjLmNvbS5icjoxMjNtdWRhcg==',
'content-type': 'multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW' },
formData: { xml: 'XML' } };
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});
GO
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://app.plugstorage.com.br/api/invoices?token=Token"
payload := strings.NewReader("------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"xml\"\r\n\r\nXML\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW--")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("content-type", "multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW")
req.Header.Add("Authorization", "Basic dml0b3IuYmVhbEB0ZWNub3NwZWgjLmNvbS5icjoxMjNtdWRhcg==")
req.Header.Add("cache-control", "no-cache")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
Comentários
0 comentário
Por favor, entre para comentar.