cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Announcements
Musicians, convert your MuseScore files to PDF to play music on the go! Learn more here.

Dropbox API Support & Feedback

Find help with the Dropbox API from other developers.

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Re: Upload and rendering Pdf files using dropbox into nextjs app

Upload and rendering Pdf files using dropbox into nextjs app

Saif Lajmi
Explorer | Level 4

Hello , i need to know about how i can integrate dropbox api to my new nextjs app for dynamicly upload file throw my nextjs page into dropbox and rendreing this pdf file to the user in my app page ... i found ancient javascript api integration but still dont understund how can i implement this using typescript instead of old js version please i need response because my job is struggle for this task.. Thank's 

8 Replies 8

Greg-DB
Dropbox Staff

Dropbox doesn't offer resources for Next.js in particular, but we do offer an API you can use for listing, uploading, and downloading files, among other operations, from any platform that can make HTTPS requests. You can find everything you need to get started with the Dropbox API, including documentation, tutorials, and SDKs here: https://www.dropbox.com/developers

 

And while I can't say if it would be suitable for your particular scenario, Dropbox does offer an official JavaScript SDK for accessing the Dropbox API here: https://github.com/dropbox/dropbox-sdk-js

Saif Lajmi
Explorer | Level 4

thank you for the time but i need simple example how to implement this api of dropbox inside any app javascript and the feautre that i need to create this integration like accesToken and the library for render the file inside my web app because i use this code to render my dropbox file still give me the error of 500 internal server error : 

import React from 'react';

interface FileOptions {
  zoom?: "best" | "fit";
}

interface FolderOptions {
  view?: "list" | "grid";
  headerSize?: "normal" | "small";
}

interface EmbedOptions {
  link: string;
  file?: FileOptions;
  folder?: FolderOptions;
}

interface DropboxProps {
  options: EmbedOptions;
}

const DropboxEmbed: React.FC<DropboxProps> = ({ options }) => {
  const { link } = options;

  return (
    <iframe
      src={link}
      width="600"
      height="400"
      frameBorder="0"
      allowFullScreen
      title="Embedded Dropbox Content"
    />
  );
};

// Example usage
const exampleOptions: EmbedOptions = {
  // Shared link to Dropbox file
  file: {
    // Sets the zoom mode for embedded files. Defaults to 'best'.
    zoom: "best" // or "fit"
  },
  folder: {
    // Sets the view mode for embedded folders. Defaults to 'list'.
    view: "list", // or "grid"
    headerSize: "normal" // or "small"
  }
};

const Secure: React.FC = () => {
  return (
    <div>
      <h1>Embedded Dropbox Content</h1>
      <DropboxEmbed options={exampleOptions} />
    </div>
  );
};

export default Secure;
 

Здравко
Legendary | Level 20

Hi @Saif Lajmi,

Dropbox Embedder is a prebuilt component, not just some name as you think as seems! Ensure usage of this component and don't "transform" it to inline frame. Dropbox links cannot be rendered in such a way.

Hope this gives some direction.

Saif Lajmi
Explorer | Level 4

thank for your answer please can you explain to me the  prebuilt Dropbox embeder because i dont find any documentation contain the embeder using typscript to allow the  rendring of  my dropbox file inside my nextjs app ?

Здравко
Legendary | Level 20

@Saif Lajmi wrote:

... i dont find any documentation contain the embeder ...



@Saif Lajmi wrote:

...

  // Shared link to Dropbox file
  file: {

...


Hm..🤔 Where you get that link from? Probably there is no any documentation. 🤷

Rhetoric, of course. I'm not familiar with the environment you use, but there is always a way to render such a thing. Just make sure when you pass the things (already rendered from your environment point of view) there to be code as pointed in the page you get your link from. 🙋 That's it.

Saif Lajmi
Explorer | Level 4

thank you very much ... i find this documentation about how to emded any think using short  javascript  script in this link https://www.dropbox.com/developers/embedder but i want to transform this into reactjs or nextjs  to implement throw my website i failed that why i'm asking for ...Thank's

Здравко
Legendary | Level 20

In short, you cannot do it in that way.

 

In more words: Dropbox Embedder works only in browser and that's why you cannot do it in the way you intent to (server side). You can do something similar, but without Dropbox Embedder. In fact you should re-implemed entire rendering process (on your own) using Dropbox API on background if you want to of course.

Hope this clarifies matter.

Saif Lajmi
Explorer | Level 4

oh ok the dropbox api sdk is published in github i should be find the way to implement this api inside my rendring website page to make it work using nextjs and typscript instead of javascript that 's the difficult that i'm trying to faced thank's bro😔

Need more support?