Есть ли доступный JavaScript API для отслеживания посылок Fedex и UPS?
API отслеживания для Fedex и UPS
comment
У UPS есть SOAP API, вы можете получить обратное проектирование официального приложения
- person mcont   schedule 06.06.2015
Ответы (3)
Я гуглил для того же, но не мог найти. Затем я решаю это на стороне сервера в ROR
вот как получить XML-запрос и ответ UPS и Fedex от их тестовых серверов.
Для Fedex:
track_no = '111111111111' (This is test track no)
Это тело XML-запроса для fedex
xml_req =
"<TrackRequest xmlns='http://fedex.com/ws/track/v3'><WebAuthenticationDetail><UserCredential><Key>YOUR_ACC_KEY</Key>
<Password>YOUR_ACC_PASSWORD</Password></UserCredential></WebAuthenticationDetail><ClientDetail>
<AccountNumber>YOUR_ACC_NUMBER</AccountNumber><MeterNumber>YOUR_ACC_METER_NUMBER</MeterNumber></ClientDetail>
<TransactionDetail><CustomerTransactionId>ActiveShipping</CustomerTransactionId></TransactionDetail>
<Version><ServiceId>trck</ServiceId><Major>3</Major><Intermediate>0</Intermediate><Minor>0</Minor></Version>
<PackageIdentifier><Value>#{track_no}</Value><Type>TRACKING_NUMBER_OR_DOORTAG</Type></PackageIdentifier>
<IncludeDetailedScans>1</IncludeDetailedScans></TrackRequest>"
path = "https://gatewaybeta.fedex.com:443/xml"
#this url connects to the test server of fedex
# for live server url is:"https://gateway.fedex.com:443/xml"
url = URI.parse(path)
http = Net::HTTP.new(url.host,url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
response = http.post(url.path, xml_req)
response_body = response.body
res = response_body.gsub(/<(\/)?.*?\:(.*?)>/, '<\1\2>')
hash = Hash.from_xml(res.to_s)
and that's it you will get response in hash variable, I converted xml response in to Hash because we can easily use Hash object at our view to display response data.
Для ИБП:
track_no = '1Z12345E1512345676' (This is test track no)
Это тело XML-запроса для UPS
xml_req =
'<?xml version="1.0"?><AccessRequest xml:lang="en-US"><AccessLicenseNumber>YOUR_ACC_LICENCE_NUMBER</AccessLicenseNumber>
<UserId>YOUR_ACC_USER_ID</UserId><Password>YOUR_ACC_PASSWORD</Password></AccessRequest>
<?xml version="1.0"?><TrackRequest xml:lang="en-US"><Request><TransactionReference>
<CustomerContext>QAST Track</CustomerContext><XpciVersion>1.0</XpciVersion></TransactionReference>
<RequestAction>Track</RequestAction><RequestOption>activity</RequestOption></Request>
<TrackingNumber>#{track_no}</TrackingNumber></TrackRequest>'
path = "https://www.ups.com/ups.app/xml/Track"
url = URI.parse(path)
http = Net::HTTP.new(url.host,url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
response = http.post(url.path, xml_req)
response_body = response.body
hash = Hash.from_xml(response_body.to_s)
эта хэш-переменная содержит ответ на запрос отслеживания UPS в формате хэша
person
Harshal_m_joshi
schedule
13.05.2011
Спасибо, я могу подтвердить, что ИБП все еще работает.
- person jsims281; 13.12.2011
Это все еще работает для Fedex?
- person ; 14.05.2012
Пробовали ли вы работать с UPS SCS AWB?
- person Eder; 21.08.2013
Это прекрасно работает, спасибо
- person Kennysmoothx; 04.12.2014
Я получаю сообщение об ошибке Документ XML сформирован правильно, но документ недействителен, поэтому, возможно, этот API изменился на удаленном конце.
- person dlchambers; 15.02.2017
Сейчас это не работает. Как я могу получить номер отслеживания демоверсии для тестирования сейчас?
- person huykon225; 21.08.2017
как получить контент в PHP?
- person huykon225; 23.08.2017
Для Fedex эта ссылка даст новую информацию: fedex.com/us/developer/WebHelp/ws/2014/dvg/WS_DVG_WebHelp/
- person walderik; 02.10.2017
не могли бы вы дать пример кода php curl для отслеживания fedex
- person Manik; 30.05.2019
еще один простой способ сделать это: просто создайте гиперссылку со следующим href
UPS:
http://wwwapps.ups.com/WebTracking/track?loc=en_US&track.x=Track&trackNums=put_tracking_number_here
ФЕДЕРАЛ ЕХПРЕСС:
(не так элегантно, но быстро, легко и выполняет свою работу!)
person
Richard Varno
schedule
29.07.2011
а для USPS tools.usps.com/go/›
- person weather; 08.01.2013
@weather Сейчас в доступе отказано. Как я могу получить номер отслеживания демоверсии для тестирования сейчас?
- person huykon225; 21.08.2017
Я не могу получить данные FedEx через API или curl. Как я могу получить содержимое отслеживания?
- person huykon225; 23.08.2017
Для ссылки FedEx: fedex.com/apps/fedextrack / для UPS используйте wwwapps.ups.com/WebTracking/ а>
- person Scott; 14.09.2017
Или вы можете использовать гем active_shipping для более удобного и чистого способа отслеживания ваших посылок для Fedex и UPS.
person
Nikhil
schedule
14.03.2014