Tôi muốn thực thi tập lệnh python này [API Python]. * Tôi có một biểu mẫu với phương thức POST và nút gửi; . * Khi người dùng viết tham số này và nhấp vào nút, tôi muốn chuyển tham số này vào tập lệnh của mình trong python và thực thi nó
Đây là mã php của tôi
Đây là kịch bản của tôi. py
# encoding=utf-8
import base64
import ssl
import subprocess
from OpenSSL import crypto
import requests
API_PREFIX = '//b.listo.mx/api/invoicing'
API_TOKEN = 'Aasdfadsf'
RFC_ID = 6690
PRIVATE_KEY_PASSPHRASE = '12345678a'
generation_data = [{
"folio": "415",
"issued_at": "Mike Van",
"issued_on": "2016-08-18T03:04:00.000Z",
"issuer": {
"colony": sys.argv[1],
"country": sys.argv[2],
"email_from": "contacto@ready.mx",
"email_subject": "Tu factura",
"employer_num": "WWWW",
"ext_num": "123",
"int_num": "234",
"id": RFC_ID,
"locality": "",
"municipio": "Mike",
"postal_code": "00000",
"reference": None,
"rfc": " ",
"rfc_name": "Services",
"state": "Mike",
"street": "Re",
"tax_regime": "pm"
},
"items": [
{
"description": "Examen IV",
"quantity": "1.000000",
"unitary_amount": "123.000000",
"unitary_amount_with_iva": "142.680000",
"units": "MX"
},
{
"description": "Certificación I",
"quantity": "2.000000",
"unitary_amount": "234.560000",
"unitary_amount_with_iva": "272.089600",
"units": "MX"
}
],
"payment_form": u"Pay",
"payment_method": "04",
"payment_method_acct_num": "9876",
"receiver": {
"colonia": "P",
"country": u"M",
"ext_num": "123",
"int_num": "456",
"issuer_rfc": 10,
"locality": u"M",
"municipio": "Mike",
"postal_code": "00000",
"reference": None,
"rfc": "TT",
"rfc_name": "ABC SA de CV",
"state": u"Mike",
"street": "Re"
},
"series": "A",
"subtotal": "592.120000",
"taxes": [
{"amount": "94.739200", "tax_rate": "16.000000", "tax_type": "IVA", "treatment": "pass_through"}
],
"total": "686.859200"
}]
r = requests.post['//b.listo.mx/api/invoicing/generate_xml', json=generation_data,
headers={'Authorization': 'Token %s' % API_TOKEN}, verify=True]
response = r.json[][0]
xml, original_chain = response['xml'], response['original_chain']
print '-' * 80
print r.json[]
# Cargar certificado y llave privada [Firma]
with open['test.cer'] as f:
cert_der = f.read[]
cert = crypto.load_certificate[crypto.FILETYPE_PEM, ssl.DER_cert_to_PEM_cert[cert_der]]
with open['test.key'] as f:
private_key_der = f.read[]
args = ['openssl', 'pkcs8', '-inform', 'DER', '-passin', 'pass:' + PRIVATE_KEY_PASSPHRASE]
proc = subprocess.Popen[args, stdout=subprocess.PIPE, stdin=subprocess.PIPE]
private_pem = proc.communicate[input=private_key_der][0].strip[]
key = crypto.load_privatekey[crypto.FILETYPE_PEM, private_pem]
# Timbrado
signature = crypto.sign[key, original_chain, 'sha1']
print "Cadena original = %s" % original_chain
print "Sello = %s" % base64.b64encode[signature]
crypto.verify[cert, signature, original_chain, 'sha1']
certification_data = {
'xml': xml,
'certificate_num': ['%0x' % cert.get_serial_number[]][1::2],
'certificate': base64.b64encode[cert_der],
'signature': base64.b64encode[signature],
'data': generation_data[0]
}
r = requests.post['%s/certify_xml' % API_PREFIX, json=certification_data,
headers={'Authorization': 'Token %s' % API_TOKEN}, verify=False]
#{Aquí me dará el id y el xml tanto url como pdf}
print '-' * 80
print r.json[]
Như các bạn thấy mình đã thử lấy các thông số trong python như thế này
thuộc địa. hệ thống. argv[1], quốc gia. hệ thống. đối số [2],
Tôi có một số lỗi với sys. argv[2] [Chỉ mục không xác định] và yêu cầu nhập
python shell php php7 php-thư viện python3 php-python php8 php-shell php74 python-php sử dụng-python-in-php python-in-php python-and-php
- Cập nhật ngày 3 tháng 2 năm 2021
- PHP
bullsoft / PHPython
Sao 15
- Mã số
- Vấn đề
- Yêu cầu kéo
PHPython. Phần mở rộng cho mã eval python3 trong PHP
php php-extension python3 cpp11 php-cpp pybind11 phppython php-python phpython
- Cập nhật15/03/2019
- C++
TravelXML / REST-API-VỚI-PYTHON-PHP-NODEJS-GO-DJANGO-LARAVEL-LUMEN-Ví dụ
Sao 10
- Mã số
- Vấn đề
- Yêu cầu kéo
Tạo API REST với hầu hết các công nghệ thịnh hành - PYTHON, PHP, GO, NodeJS và các Framework thịnh hành như Laravel, GIN, Flask, DJANGO. Bạn CHỈ mất 5 phút để tạo API REST. Hướng dẫn API REST
nodejs python api golang jar laravel django php7 json-api rest-api php-framework rest-framework frameworks lumen-api php-python rest-api-example rest-apis rest-api-framework xu hướng-công nghệ