मैं अपने कंट्रोलर से बॉक्स.कॉम एपीआई पर पोस्ट रिक्वेस्ट करने की कोशिश कर रहा हूं। अनुरोध मेरे Box.com खाते में एक फ़ाइल अपलोड करेगा। निम्नलिखित कोड मेरे विचार पर है:

<form action="/accept" method="post" enctype="multipart/form-data">
    {{ csrf_field() }}

    <input type="file" name="filename">
    <input type="text" name="parent_id" value="0">

    <button type="submit">Submit</button>
</form>

मेरे नियंत्रक में, मुझे कोई भी सुराग नहीं मिल रहा है कि मैं बॉक्स डॉट एपीआई को पोस्ट अनुरोध कैसे भेज सकता हूं जो एक प्राधिकरण हेडर के साथ फॉर्म डेटा भेजेगा। बॉक्स.कॉम एपीआई को अनुरोध स्वीकार करने के लिए प्राधिकरण हेडर की आवश्यकता होती है।

हालाँकि, Laravel प्रलेखन में उनके पास एक खंड है जहाँ मुझे निम्नलिखित कोड मिला:

return response($content)
        ->header('Content-Type', application/json)
        ->header('Authorization', 'Bearer XXXXXXXXXXXXXXXX');

मैं इसे उपयोग करके प्राधिकरण शीर्षलेख सेट कर सकता हूं, फिर फॉर्म डेटा कैसे भेजा जाएगा?

पोस्ट अनुरोध स्वीकार करने के लिए यहां Box.com API URL है:

https://upload.box.com/api/2.0/files/content
0
Md Mazedul Islam Khan 15 नवम्बर 2015, 01:00

2 जवाब

सबसे बढ़िया उत्तर

मैं निश्चित रूप से pespantelis से सहमत हूं, Guzzle जैसे PHP HTTP Client का उपयोग करना एक शानदार तरीका है तुम जो करना चाहते हो, उसके साथ जाओ।

एक बार जब आप सभी सेट हो जाते हैं तो यह आपके अनुरोध को स्वरूपित करने का एक मामला है, जैसे आप वह कर सकते हैं जो आप ऐसा करने की कोशिश कर रहे हैं:

Route::get( '/', function ()
{
    $client = new GuzzleHttp\Client( ["base_uri" => "https://upload.box.com/api/2.0/"] );

    $response = $client->request( "GET", "files/content", ["headers" => ["Authorization" => "Bearer XXXXXXXXXXXXXXXX", "Content-Type" => "application/json"]] );

    return Response::json($response);
} );

हालाँकि मैं आधिकारिक SDK या समुदाय-निर्मित SDK के रूप में pespantelis से पता चलता है कि समझ में आने के लिए आसान हो सकता है क्योंकि वे आपके लिए यह सब बाहर रखना आसान है।

1
James 15 नवम्बर 2015, 04:38

वेब सेवाओं (जैसे कि बॉक्स.कॉम) के साथ एकीकरण करने के लिए, आपको भेजने के लिए PHP HTTP Client (जैसे guzzle) की आवश्यकता होगी {{ X1 }} ।

आधिकारिक SDK या php के लिए समुदाय-निर्मित SDK

1
Pantelis Peslis 14 नवम्बर 2015, 23:09