post ไฟล์ ไปที่ WebService ที่ต้องผ่านการยืนยันตัวตน Authorization ด้วย Joomla HttpFactory

แชร์ ความรู้ในการ พัฒนา Joomla Component Extension Module Plugin

Moderator: mindphp, ผู้ดูแลกระดาน

ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 41230
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

post ไฟล์ ไปที่ WebService ที่ต้องผ่านการยืนยันตัวตน Authorization ด้วย Joomla HttpFactory

โพสต์ที่ยังไม่ได้อ่าน โดย mindphp »

วิธี post ไฟล์ ภาพ หรือ ไฟล์ เอกสาต่างไป ไปประมวลผล ที่ Web Service โดยที่ Web Service ต้องผ่านการยืนยันตัวตนก่อน (Authorization) ด้วย Joomla HttpFactory
ตัวอย่างที่นำเสนอ จะเป็นการยืนยันตัวตนด้วย api key แบบ bacic

โค้ด: เลือกทั้งหมด

		
		$endpoint = 'URL Web Service';
		$apiKey   = 'API KEY';
		$filepath  = 'Full Path File ';
		$httpInterface = HttpFactory::getHttp();  //  สร้าง Object ไว้จัดการกับ http จาก lib ของ Joomla 
		//html basic authorization
		$httpInterface->setOption('headers.Authorization', 'Basic ' . base64_encode('api:' . $apiKey));
		$response = $httpInterface->post($endpoint, file_get_contents($filepath));
		
		// รับ  $response เพื่อทำงานต่อ 
		// ตัวอย่าง
				if (200 == $response->code || 201 == $response->code)
		{
			$json = json_decode($response->body);
			if (isset ($json->error))
			{
				Factory::getApplication()->enqueueMessage(Text::_('ข้อความแจ้ง ERROR ถ้ามีข้อผิดพลาด'), 'error');

				return null;
			}
			else
			{
				//reset iface
				$httpInterface = HttpFactory::getHttp();
				$image         = $httpInterface->get($json->output->url)->body;
				file_put_contents($filepath, $image);  // Save ทับไฟล์เดิม 

				return $json->output->size;
			}
		}
		
		
ติดตามบทเรียนสอน พัฒนา Extension ของ Joomla ได้ที่นี่
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 41230
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

Re: post ไฟล์ ไปที่ WebService ที่ต้องผ่านการยืนยันตัวตน Authorization ด้วย Joomla HttpFactory

โพสต์ที่ยังไม่ได้อ่าน โดย mindphp »

ถ้าใช้ ผ่าน curl

โค้ด: เลือกทั้งหมด

curl --user api:YOUR_API_KEY \
      --data-binary @filename.jpg -i {WebService-URL}
curl api binary
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ตอบกลับโพส
  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 65