2015-01-20 5 views
1

Это концептуальный вопрос, но после поиска и поиска через онлайн-ресурсы я не могу найти ответ на этот маленький вопрос. Любая помощь будет оценена по достоинству. Спасибо заранее.Каковы недостатки тега CFhttp над утилитой CUrl?

Вопрос возник, когда я использовал API eNOM для выполнения нескольких операций с использованием тестовой учетной записи, которую они предоставляют.

https://resellertest.enom.com/interface.asp?command=nameofcommand& 
uid=yourloginid&pw=yourpassword& 
paramname=paramvalue&nextparamname=nextparamvalue 

Примечание: Это просто пример URL. Здесь поле пароля - это «api-key».

Натуральное решение для охлаждения с использованием CFhttp оказалось полезным с точки зрения обработки выходных данных или передачи заголовков и параметров API RESTful. Первый вопрос, который возникает, заключается в следующем: CFhttp шифрует поля пароля как поддерживаемые CUrl, а если нет, то можно ли его реализовать ?. Во-вторых, я нашел этот кусок текста, читая о CUrl и CFHTTP:

Curl позволяет подключать и общаться с различными типами серверов с различными типами протоколов. Используя cURL вы можете.

  • Внедрить сценарии уведомления об оплате платежных шлюзов.
  • Загрузка и выгрузка файлов с удаленных серверов.
  • Войти на другие сайты и получить доступ к разделам раздела.

Итак, есть пункты нет. 1 & 2 возможно используя CFhttp? и если да, то я могу кратко рассказать о том, как это сделать.

+2

Голосование, чтобы закрыть, поскольку оно не отражает осязаемую «проблему» для решения. В чем проблема, с которой вы сталкиваетесь, приводит к этому вопросу? * Это будет вопрос, о котором нужно спросить. –

+0

Спасибо [Adam Cameron] (/ users/894061/adam-cameron). Я повторно разместил вопрос, чтобы быть более конкретным. Спасибо – Anurag

+0

@AnuragMishra: вам нужно отправить пароль в url? –

ответ

3

Curl позволяет вам подключиться к любому сайту https без необходимости установки «обязательного» сертификата. Хотя некоторые могут назвать это ненадежным, мне очень нравится эта функция. Помимо этой функции, я не верю, что есть много (если угодно), которые вы можете сделать с завитком, который каким-то образом невозможно сделать с cfhttp.

Если вы работаете с https-сайтами, то с большим количеством завитка легче работать с CFHTTP (imo).

В соответствии с документами coldfusion тег cfhttp использует SSL для переговоров о безопасных транзакциях. (Ссылка http://help.adobe.com/en_US/ColdFusion/9.0/CFMLRef/WSc3ff6d0ea77859461172e0811cbec22c24-7ffc.html)


Обновление: Вы можете контролировать, если данные передаются в зашифрованном виде или нет, используя встроенный в прокси в ColdFusion. См. http://helpx.adobe.com/coldfusion/kb/coldfusion-mx-monitoring-soap-traffic.html для более подробной информации.

+0

Это я уже знал. Спасибо, кстати. Проблема не связана с вызовами https. Некоторые API-интерфейсы не поддерживают поддержку https-звонков, все просто http. Так есть ли способ кодирования или шифрования данных для параметров? Я могу просто использовать ColdFusion для него, но, к сожалению, целевой API (eNom здесь) не поймет, что он зашифрован и как с ним бороться. – Anurag

+0

Из документа 'cfhttp' [docs] (http://help.adobe.com/en_US/ColdFusion/9.0/CFMLRef/WSc3ff6d0ea77859461172e0811cbec22c24-7ffc.html) видно, что пароль, связанный с тегом cfhttp в сочетании с именем пользователя, формируется строка с кодировкой base64, которая передается в заголовке Authenticate. Это решает проблему только в том случае, если аутентификация осуществляется обычным способом. Но что, если имя пользователя отправляется как «учетная запись», а пароль передается как «api-key». Поэтому, если я могу каким-то образом закодировать их на base64, это будет потрясающе. Мне нужна экспертная консультация, возможно ли это, или мне нужно использовать некоторую библиотеку? – Anurag

+0

@AnuragMishra, возможно, вы можете использовать 'cfhttpparam', чтобы указать свой собственный заголовок аутентификации. Что-то вроде [этот ответ на аналогичный вопрос] (http://stackoverflow.com/a/14228097/1636917) –