Comhaid a Uaslódáil chuig an Ardán
Bíonn gá le go leor tascanna go gcuirfidh tú comhad ar fáil don ardán Legalesign le húsáid, mar shampla comhad le húsáid mar théimpléad nó íomhá le húsáid mar shíniú.
Éilíonn an t-ardán go gcuirfidh tú an comhad seo sa fho- fhillteán ceart deár díchur córas. Déanfaidh sé seo do chomhad a sheiceáil le haghaidh fadhbanna slándála féideartha agus iad a chur ar aghaidh chuig an áit cheart dá gcuspóir.
Má tá fonn ort doiciméad téimpléid a uaslódáil, bain úsáid as an treoir tiomnaithe Upload a File as a Template ina ionad. Úsáideann an sreabhadh sin anois an uploadUrl a fhaightear ó createTemplate.
What You'll Learn
Tiocfaidh an treoir seo trí d’uachtar comhaid a uaslódáil chuig Legalesign. Ná bí buartha má tá tú nua i n-APIanna nó stóráil scamall - míneoimid gach céim go soiléir.
Cad is URL Réamhshíniú ann?
Is cosúil le pas rochtana sealadach é URL réamhshíniú. In ionad rochtain bhuan a thabhairt duit ar ár stóráil, tugaimid URL speisialta duit a:
- Ní oibríonn ach ar feadh tréimhse ghearr (15 nóiméad)
- Ceadaíonn duit comhad ar leith amháin a uaslódáil amháin
- Coinníonn do chomhaid slán
Smaoinigh air mar thicéad pháirceála valet - tugann sé rochtain shealadach, theoranta don chuspóir sonrach.
Cad é S3?
Is é S3 (Seirbhís Stórála Simplí) stóráil comhaid scamall Amazon. Seo an áit a stóráilimid doiciméid, lógónna agus comhaid eile go sábháilte. Ní gá duit tuiscint dhomhain a bheith agat ar S3 - ach bí ar an eolas go bhfuil sé ina áit shlán chun comhaid a stóráil sa scamall.
Forbhreathnú
Leanann an próiseas uaslódála na céimeanna seo:
- Iarr URL uaslódála réamhshíniú ón API GraphQL (éileamh cead chun uaslódáil)
- Uaslódáil do chomhad chuig S3 ag baint úsáide as an URL atá curtha ar fáil (seol an comhad i ndáiríre)
- Próiseálann an t-ardán go huathoibríoch agus bailíonn sé an comhad (seiceáilimid a sábháilteacht)
- Aistrítear an comhad go dtí a cheann scríbe deiridh (cuirimid é sa áit cheart)
Cén Fáth ar an bPróiseas Dhá-Chéim seo?
B'fhéidir go n-iompaíonn tú cén fáth nach ligimid duit uaslódáil go díreach. Tá an próiseas dhó-chéim seo:
- Ag cinntiú go bhfuil cead agat uaslódáil a dhéanamh
- Ag cosc a chur ar uaslódálacha comhaid neamhúdaraithe
- Ag ceadú dúinn scanadh a dhéanamh ar chomhaid le haghaidh víris
- Ag coinneáil taifead ar cé a uaslódáil cad
Céim 1: Iarr URL Uaslódála
Bain úsáid as an gceist upload chun URL réamhshíniú a fháil do do uaslódáil comhaid (sa chás seo PDF). Féach ar ár treoir fíoraithe le haghaidh tuilleadh eolais faoin gcaoi le tosú ag rith fiosruithe GraphQL. Le haghaidh sonraí iomlána ar argóintí, féach ar an tagairt do cheist upload.
query {
upload(
id: "<BASE64_OBJECT_ID>",
uploadType: TEMPLATE,
extension: "pdf"
) {
url
}
}
Míniú ar na Paraiméadair
- id: Aitheantóir ruda le híoschódú Base64 (m.sh. aitheantóir téimpléid, aitheantóir taithí)
- uploadType: Cineál an chomhaid atá á uaslódáil (féach thíos)
- extension: Síneadh comhaid (pdf, png, jpg)
Cineálacha Uaslódála
TEMPLATE- Comhaid PDF le haghaidh téimpléid doiciméadLOGO- Íomhánna le haghaidh brandaíocht leathanach sínitheEMAILLOGO- Íomhánna le haghaidh brandaíocht ríomhphoistATTACHMENT- Comhaid bhreise le dhoiciméid a cheangal
Féach ar an enum UploadType don liosta iomlán.
Céim 2: Uaslódáil chuig S3
Tugann an cheist URL réamhshíniú ar ais. Seol do chomhad chuig an URL seo ag baint úsáide as iarratas HTTP PUT:
const response = await fetch(url, {
method: 'PUT',
body: fileData,
headers: {
'Content-Type': 'application/pdf' // or appropriate MIME type
}
});
Céim 3: Próiseáil Uathoibríoch
Nuair atá an comhad uaslódáilte, déanann an t-ardán:
- Scanadh an comhad le haghaidh víris agus bagairtí slándála
- Bailíochtú ar fhormáid agus ábhar an chomhaid
- Próiseáil ar an gcomhad (m.sh., tagertar méid leathanaigh do PDFanna)
- Aistrítear é go dtí an suíomh stórála deiridh le ceadanna cuí
Rianú Próiseála Idir an Dá Chéim
Má theastaíonn aiseolas i bhfíor-am tar éis uaslódáil S3 a chríochnú, bain úsáid as síntiúis GraphQL.
- Seoltar eachtraí uaslódála ar
subscribeUserFeed - Úsáideann siad
category: "upload" - Áirítear go minic na himeachtaí
uploadScanned,uploadTypeChecked,uploadCompleted, agusuploadFailed
Féach ar Rianú Dul Chun Cinn Uaslódála le Húsaid Síntiús.
Sampla Iomlán
- JavaScript
- Python
- C#
import { generateClient } from 'aws-amplify/api';
const uploadFile = async (objectId, file) => {
const client = generateClient();
const extension = file.name.split('.').pop();
// Step 1: Get upload URL
const result = await client.graphql({
query: `
query {
upload(
id: "${objectId}",
uploadType: TEMPLATE,
extension: "${extension}"
) {
url
}
}
`
});
const uploadUrl = result.data.upload.url;
// Step 2: Upload file
const response = await fetch(uploadUrl, {
method: 'PUT',
body: file,
headers: {
'Content-Type': file.type
}
});
if (!response.ok) {
throw new Error('Upload failed');
}
return { success: true };
};
import requests
from gql import gql, Client
from gql.transport.requests import RequestsHTTPTransport
def upload_file(graphql_endpoint, auth_token, object_id, file_path):
extension = file_path.split('.')[-1]
transport = RequestsHTTPTransport(
url=graphql_endpoint,
headers={'Authorization': auth_token}
)
client = Client(transport=transport, fetch_schema_from_transport=True)
query = gql(f'''
query {{
upload(
id: "{object_id}",
uploadType: TEMPLATE,
extension: "{extension}"
) {{
url
}}
}}
''')
result = client.execute(query)
upload_url = result['upload']['url']
with open(file_path, 'rb') as f:
file_data = f.read()
response = requests.put(
upload_url,
data=file_data,
headers={'Content-Type': 'application/pdf'}
)
if response.status_code != 200:
raise Exception('Upload failed')
return {'success': True}
using System;
using System.IO;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
using GraphQL;
using GraphQL.Client.Http;
using GraphQL.Client.Serializer.Newtonsoft;
public class FileUploader
{
public async Task<bool> UploadFile(string graphqlEndpoint, string authToken,
string objectId, string filePath)
{
var extension = Path.GetExtension(filePath).TrimStart('.');
var graphQLClient = new GraphQLHttpClient(
graphqlEndpoint,
new NewtonsoftJsonSerializer()
);
graphQLClient.HttpClient.DefaultRequestHeaders.Add("Authorization", authToken);
var query = new GraphQLRequest
{
Query = $@"
query {{
upload(
id: ""{objectId}"",
uploadType: TEMPLATE,
extension: ""{extension}""
) {{
url
}}
}}
"
};
var response = await graphQLClient.SendQueryAsync<dynamic>(query);
string uploadUrl = response.Data.upload.url;
using var httpClient = new HttpClient();
var fileBytes = await File.ReadAllBytesAsync(filePath);
var content = new ByteArrayContent(fileBytes);
content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/pdf");
var uploadResponse = await httpClient.PutAsync(uploadUrl, content);
if (!uploadResponse.IsSuccessStatusCode)
{
throw new Exception("Upload failed");
}
return true;
}
}
Formáid an Chonair
Leanann comhaid an gnáthchoinníll ainmniúcháin seo:
<uploadType>/<userId>/<base64ObjectId>.<extension>
Sampla:
template/usr123abc/dHBsYjQ5YTg5NWQtYWRhMy0xMWYwLWIxZGMtMDY5NzZlZmU0MzIx.pdf
Níl ort an cosán seo a chruthú tú féin - déanann an API é go huathoibríoch nuair a sholáthraíonn tú na paraiméadair cheart.
Cineálacha Comhaid a Thacaítear leo
Téimpléid
- Comhaid PDF amháin
- Uasteorainn méid: 50MB
Lógónna agus Lógónna Ríomhphoist
- PNG, JPG, JPEG
- Uasteorainn méid: 5MB
- Toimhdeanna molta: 200x200px (lógónna), 600x200px (lógónna ríomhphoist)
Ceangaltáin
- PDF, DOC, DOCX, XLS, XLSX, PNG, JPG
- Uasteorainn méid: 25MB
Láimhseáil Earráidí
- Gan cead: Níl an t-aitheantóir ruda i do chuntas nó do ghrúpa
- Síneadh neamhbhailí: Ní tacaítear le cineál comhaid don chineál uaslódála seo
- Comhad ró-mhór: Sáraíonn sé an teorainn uasta méid
- Víreas aimsithe: D'fhág an comhad an scanadh slándála faoi mhíshásamh
Nótaí Slándála
- Éagann URLs réamhshíniú tar éis 15 nóiméad
- Déantar scanadh ar chomhaid le haghaidh víris sular próiseáiltear iad
- Ní féidir le húsáideoirí a bhfuil cead cuí acu comhaid a uaslódáil amháin
- Tugtar comhaid ina n-aonar le linn próiseála i mbucáiste an díchur
Cleachtais is Fearr
- Seiceáil méid comhaid i gcónaí roimh uaslódáil
- Bain úsáid as an bhformáid comhaid cheart
- Déan lámh ar earráidí go séimh
- Ná húsáid URLanna réamhshíniú arís
- Coinnigh do chuid creidmheasanna sábháilte — ná roinn riamh ticéid fíoraithe ná cuir isteach iad i gcód ar an taobh cliant